Livre d'or

boss0211 Messages postés 264 Statut Membre -  
pzuk Messages postés 19 Statut Membre -
Bonjour, je voulais utiliser la fonxiotn mail() mais sa marche pas.
Quel sont mes erreur (sachant que le mail est copier dans un autre fichier sur le serveur); voici les script:


<code><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Livre d'or</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<style type="text/css">

form, .pages {text-align:center;}
body { background:url(http://boss021190.free.fr/grey.jpg);}
</style>

</head>

<body>
<table border="0">
<tr>
<td><a href="http://boss021190.free.fr"><img style="border: 0px solid ;" alt="Annuaire boss021190" src="img/logo.jpg" /></a></td>
<td><p><h4>Mon site vous plaît ? Laissez-moi un commentaire!</h4></p></td>
</tr>
</table>
<form method="post" action="livreor.php">
<p>
Pseudo : <input name="pseudo" /><br />
Note (entre 0 et 10): <input name="note" /><a href="http://www.guppytop.com/vote.php?id=1006" target="_blank">
<img src="http://www.guppytop.com/images/general/guppytop.gif" border="0" alt="GuppYTop - l'annuaire des sites sous CMS GuppY" title="GuppYTop - l'annuaire des sites sous CMS GuppY">
</a><br />
Message :<br />
<textarea name="message" rows="8" cols="35"></textarea> <br />
<input type="submit" value="Envoyer" /> <input type="reset" value="Effacer" >
</p>
</form>

<p class="pages">
<?php
mysql_connect("localhost", "liggin", "password");
mysql_select_db("base_de_donne");

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset ($_POST['note']) AND isset($_POST['message']))
{

$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
$note = htmlentities($_POST['note'], ENT_QUOTES);

$message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />

// On peut enfin enregistrer :o)
mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $note . "', '". $message . "')");
}

AND
{
//**************************************************************version envoi mail****************************************

$copietxt = fopen("admin/ip.php","a"); //NE PAS TOUCHER
$date = date("d/m/Y"); //NE PAS TOUCHER
$heure = date("H:i:s"); //NE PAS TOUCHER

$prenom = ("Annuaire boss021190"); // Votre Prénom
$votreemail =("boss021190@free.fr"); // Votre E-mail
$adresse =("http://boss021190.free.fr/admin/");
mail(

"$votreemail",

"Un commentaire a ete laisser dans le livre dor",
"Bonjour $prenom,\n\nLe $date à $heure, une personne a ajouter un commentaire dans le livre dor.\n\nSonn IP était $REMOTE_ADDR.\n\nA vous de voir maintenant ;-)\n\n\nA très bientôt ...\n\nP.S.- Cette IP a égallement été enregistrée dans le fichier 'ip.php' du dossier $fichier.\nVous pouvez acceder au fichier 'ip.php' en cliquant ici : $adresse/ip.php .");
// Ci-dessus, le message qui vous sera envoyé par E-mail

// On copie le message qui vous a été envoyé dans un fichier PHP (ip.php)
fputs ($copietxt, "Bonjour $prenom,<br><br>Le $date à $heure, une personne a essaier d'acceder à votre fichier sécurisé $fichier.<br><br>Son IP était $REMOTE_ADDR.<br><br>A vous de voir maintenant ;-)<br><br><br>A très bientôt ... <br><br> ******************************* <br><br>");
fclose($copietxt);
}

//***************************************************************************************************************************
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 10; // Essayez de changer ce nombre pour voir :o)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor2.php?page=' . $i . '">' . $i . '</a> ';
}

?>

</p>

<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
echo '<center><table style="border:1px solid; border-color:blue; background:#9999FF;" width="75%"><tr><td style="border:1px solid;"><p><b>' . $donnees['pseudo'] . ' a écrit :</td></b></tr><tr><td>' . $donnees['message'] . '<br /> Note: ' .$donnees['note'] .'/10 </td></tr></table> </p></center>';
}

mysql_close();
?>
<br />
<center>&copy Annuaire boss021190</center>
<a href="http://boss021190.free.fr"><div style="text-align:center; font-size:1;">Retour</div></a>
</body>
</html>code>

1 réponse

pzuk Messages postés 19 Statut Membre 5
 
Bon.
Y'a pas mal de trucs que je trouve bizarre dans ton code ^^

AND
{
//**************************************************************version envoi mail**************************************** 

=>Je comprend pas trop ca que ca fait là ça. Ce AND est inutile.
$prenom = ("Annuaire boss021190"); // Votre Prénom 

on donne une valeur a une variable suivant la syntaxe $variable="valeur". Les parenthèses sont de trop.
mail(

"$votreemail",

il ne fait pas mettre de guillemets puisque $votreemail est une varaible
Bonjour $prenom,\n\nLe $date à $heure, u

Il faut concatener de la facon suivante : Bonjour '.$prenom.', \n\n...

Voila ce sont quelques erreurs relevé vite fait. Y'en a peut etre d'autres. Relis ton code.
0