Voilà, j´ai fait un petit script PHP pour envoyer des mails, je ne les pas uploader, mais je vous donne le code ( en bas)...
Dans la premiere fonction if(), c´est l´expression reguliere pour savoir si une adresse mail est bonne.
dans elseif(), j´ai fait deux explode() de l´adresse... un pour séparer de chque côté du " @", ca classe dans mon tableau $domain le nom du gars ( $domain[0]) et son domaine($domain[1]). Ensuite, l´autre explode de la chaine $domain[1], ca enleve le nom du domaine ( ex.wanadoo) et l´identificateur du pays ( ex.: . fr). Puis, dans ma fonction elseif(), je dis que si l´identificateur de pays ( $pays[1]) ne doit pas etre inférieur à 2.
Et que si tout va bien, qu´il envoie le mail avec la fonction mail();
le probleme, c´est qu´il me met une erreur :
Parse error: parse error in
/Library/WebServer/Documents/GraphiColas/infos/act
ion.php on line 4
Mais, si j´enleve la partie du elseif() et les deux variables au dessus ( $pays et $domain), tout fonctionne bien. Mais je souhaiterais quand meme utiliserla fonction elseif() que j´ai faites...
merci de bien vouloir m´aider.
@+ Colas
P.S.: Le code est dans le post suivant ; )
P.S.2: je peux pas ul, mon logiciel ne marche plus ; )
< ?php
if
(!eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9
\-\.]+$", $name)){
echo " Votre adresse e-mail n´est pas valide, merci de bien vouloir en entrer une valide.<br><br>";
echo ´<div align="center"><a href="index.php#form"><strong>Retour au formulaire</strong></a></div>´;
exit;
}
$domain=explode("@", $name);
$pays=explode(".", $domain[1]);
elseif ( strlen($pays[1])<2){
echo " Votre adresse e-mail n´est pas valide, merci de bien vouloir en entrer une valide.<br><br>";
echo ´<div align="center"><a href="index.php#form"><strong>Retour au formulaire</strong></a></div>´;
exit;
}
else {
mail("colasmalaise@wanadoo.fr", " $sujet", " $mail", " from: $name");
echo " Votre message a bien été envoyé au webmaster, merci ! ";
}
? >
met ce code :
$domain=explode("@", $name);
$pays=explode(".", $domain[1]);
au debut et pas entre le if et le elseif . ..
Ok, merci bcp, ca marche, mais maintenat, quand je met
elseif ( empty($name || $sujet || $mail)){
echo " Vous n´avez pas rempli un ( ou plusieurs) champs.";
exit;
}
dans le 1er elseif, avant le 2eme ( :p ) , il me met cette erreur:
Parse error: parse error, expecting `´)´´ in
/Library/WebServer/Documents/GraphiColas/infos/act
ion.php on line 4
$name c´est l´email du gars
$sujet c´est le sujet de l´email
$mail c´est le message
comme sur : http://graphicolas.free.fr/infos/index.php#form
voilà, tu peux m´aider plz ? ou les autres ; )
@+ COlas
Essaye :
elseif ( empty($name) || empty($sujet) || empty($mail))
exit est une fonction. Donc on ecrit exit().
Bande de débutants. ![]()
C´est bon, merci, tout marche ; )
Blawk ==> C´est toi le débutant, tu devrais savoir qu´elle peut s´éxécuter sans argument, meme sans les parenthese, essaye et tu verras ; )
lol... Vous avez raison... Je suis un débutant...
Blawk ==> Ne te vexe pas ; )
Il en faut plus pour me vexer... ; )
On aurait dit que tu l´était pourtant ; p
Pour le mail que tu m´a envoyé ( Blawk), le probleme est réglé ; )
http://www.graphicolas.fr.st ( en bas)
ET je compte faire mon Blog TOUT SEUL ! Pas besoin d´aide !
Et lisez le message que j´ai mis dans mon blog, sur la version tres dynamique......
@+
Par contre, il y a toujours un problème dans tes news.
Non ! Je te dis que ce n´est pas un problème, je sais comment le régler très vite !
ah ouais ? Et ça, c´est pas une erreur:
Warning: Access denied for user: ´root@212.27.35.54´ ( Using password: NO) in conn_news.php on line 9
Warning: MySQL Connection Failed: Access denied for user: ´root@212.27.35.54´ ( Using password: NO) in conn_news.php on line 9
Access denied for user: ´root@212.27.35.54´ ( Using password: NO)
Sinon, je te conseil de donner et de faire référencé ton adresse free ( ou avec " .online.fr" si tu préfère). Parce que comme ça tes visiteurs n´auront pas le popup ; tu aura des statistique plus complète ( si le visiteur et arrivé par la redirection, tu en peut pas savoir de quel autre site il vient, de quel moteur de recherche...) ; l´adresse de Free n´est pas trop compliquée.
< ?php
@ $db=mysql_connect("localhost", " root", " ");
mysql_select_db("colas");
$query="SELECT * FROM colas ORDER BY id DESC";
$result=mysql_query($query);
while ( $row=mysql_fetch_array($result))) {
echo´<table width="100%" border="5" cellpadding="3" cellspacing="0" bordercolor="#FFFFFF">
< tr>
<td bgcolor="#2e62a0" colspan="2">Par ´.stripslashes($row["nom"]).´</td>
</tr>
<tr>
<td colspan="2"
bgcolor="#ffaa00">´.stripslashes($row["mes"]).´</t
d>
</tr>
</table>´;}
? >
Voilà, je sais insere des données dans la BDD, mais pour les ressortir, le code qui est en haut ne marche pas.... ; (
Pouvez vous m´aider plz ?
merci
@+ Colas
Blawk ==> Ok, mais je sais pas comment faire, mais aussi j´ai pas cherché ; p
Blawk ==> Et pour " l´erreur", je sais exactement comment la réparer, je sais qu´il y a une erreur, mais ce n´est pas un probleme !
while ( $row=mysql_fetch_array($result))) {
Il y a une parenthèse en trop.
c´est ta connection qui foire : )
$db = @mysql_connect("localhost", " root", " " );
ton pseudo pour la connection n´est surement pas root sous free, et il faut un pass : )
une autre erreur :
$query="SELECT * FROM colas ORDER BY id DESC";
tu veux selectionner ta base de donnée??? : /
Non, pour ma connection, j´ai enlevé le mot de passe et le nom ; )
Et pour : $query="SELECT * FROM colas ORDER BY id DESC";
Je vois pas trop ce que tu veux dire :/ Biensur que je veux sélectionner ma base de données, dans mysql_select_db je selectionne ma BDD qui s´appelle " colas" et dans $query="SELECT * FROM colas ORDER BY id DESC"; je sélectionne ma table qui s´appelle " colas"....
Blawk ==> Je vais essayer.