Envoie de mails

wil06
Invité n'ayant pas de compte PHPfrance

17 avr. 2013, 19:47

bonjour a tous,

je me trouve devant un probleme :

lors de la validation par un administrateur , je voudrais l'envoie automatique d'un mails au membre inscris en lui disant qu'il est valider

pouvez vous me corriger ma page .php

lors de la connexion au site entant qu'administrateur il me revient la reponse suivante :

internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

en vous remerciant par avance de vos reponse


voici le code :
<?php

session_start();

$prefix = '../';

$titre_page = 'Administration - Membres non validés';	//Définition du titre de la page
include_once '../recup_config.php';	 //On récupère la configuration du script
include_once '../verifications.php';	 //On inclue les vérifications
if($rang != ADMIN)	exit;	 //On exclue le visiteur si il n'a pas l'autorisation d'accéder à l'admin
include_once 'header.php';	 //on affiche le haut (header)

if( isset($_GET['valider']))	{	 //Si le formulaire a été envoyé
if(!is_numeric($_GET['valider']))	exit;	 //On vérifie si c'est un nombre
connexion();
mysql_query("UPDATE ". PREFIX ."membres SET valide='1' WHERE id='". $_GET['valider'] ."'") or die('Erreur de modification du membre');
echo'Le membre a été validé<br /><br />';

$query = "SELECT * FROM " . PREFIX . "membres WHERE valide='0' AND id =" . $_GET['valider'];
echo $query."<br/>";
$usr_query = mysql_query($query) or die ('Erreur, impossible d'afficher ce membre');
$usr = mysql_fetch_array($usr_query);
mail($usr['email'], '['. $nom_site .']'.INSCRIPTION_TITRE, ENVOIE_MAIL_CONFIRME_1. $nom_site .".". ENVOIE_MAIL_CONFIRME_2 ." ".INSCRIPTION_PSEUDO ." : ". $usr['pseudo'] ." ". INSCRIPTION_PASS ." : ". $usr['mdp'] ." ". ENVOIE_MAIL_CONFIRME_3 ." " );

mysql_close();
}

if( isset($_GET['supprimer']))	{	 //Si le formulaire a été envoyé

if(!is_numeric($_GET['supprimer']))	exit;	 //On vérifie si c'est un nombre

connexion();

mysql_query("DELETE FROM ". PREFIX ."membres WHERE id='". $_GET['supprimer'] ."'") or die('Erreur de suppression du membre');

echo'Le membre a été supprimé<br /><br />';

mysql_close();
}

connexion();

echo'Attention, les membres qui n'ont pas validé leur e-mail (en choisissant l'option dans la configuration) sont aussi marqués ici. Ceci permet de valider aussi les membres qui n'ont pas validé leur e-mail.<br />
<br /><table width="100%"><tr><th>Pseudo</th><th>E-mail</th><th>Rang</th><th>Action</th></tr> ';
@$class = form($_GET['pos']);
if( !$class ) $class = 0;

$couleur=0;
$tabl = mysql_query("SELECT * FROM ". PREFIX ."membres WHERE valide='0' ORDER BY id ASC") or die ('Erreur, impossible d'afficher les membres');
while ($donnees_tabl = mysql_fetch_array($tabl) )
{
$rang_mem = $donnees_tabl["rang"];
if($rang_mem == 1) $rang_mem = 'Administrateur';
if($rang_mem == 2) $rang_mem = 'Modérateur';
if($rang_mem == 3) $rang_mem = 'Membre';
echo'<tr class="';
$couleur++;
if($couleur == 1)	echo'style1';
elseif($couleur == 2)	{	echo'style2'; $couleur=0;	}
echo'"><td>
', $donnees_tabl["pseudo"] ,'</td><td>', $donnees_tabl["email"] ,'</td><td>', $rang_mem ,'</td><td>
<a href="?valider=', $donnees_tabl["id"] ,'">Valider</a> - <a href="?supprimer=', $donnees_tabl["id"] ,'">Supprimer</a></tr>';
}

echo'</table>';
include_once '../bas.php';	//on affiche le bas (footer)
?>

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

18 avr. 2013, 10:27

salut,


commence par corriger les erreurs de syntaxe ça ira certainement mieux.
Par exemple
<?php
die ('Erreur, impossible d'afficher ce membre')
tu ne peux mettre de ' au milieu d'une chaîne qui est délimitée par des ' (sinon php estime que la chaîne finis à la première ' rencontrée.
Pour palier cela il faut ajouter un \ devant la '.
<?php
die ('Erreur, impossible d\'afficher ce membre')
un éditeur de texte "avancé" doit t'indiquer ce genre d'erreur (notepad++, pspad etc) ou un IDE (zend studio, netbeans, eclipse, phpstorm etc etc).
un ide pourras aussi t’aider de d’autre façon (colorisation du code, auto complétion des fonctions etc etc) l’essayé c'est l'adopter ;)

@+
Il en faut peu pour être heureux ......