Utilisateur anonyme
-
25 août 2008 à 20:13
Utilisateur anonyme -
25 août 2008 à 20:27
Bonjour, je suis en train de créer un forum avec Mimi78120
http://www.commentcamarche.net/forum/affich 8043587 site web recrutement manga psp ds, et, nous avons une
erreur dans un code :
<?php
//Cette fonction doit être appelée avant tout code html
session_start();
//On donne ensuite un titre à la page, puis on appelle notre fichier debut.php
$titre = "Modification du profil";
include("includes/debut.php");
?>
<body>
<div id="banniere"></div>
<?php
//Maintenant, on se connecte à la base de données
include("includes/identifiants.php");
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);
//Encore est toujours notre belle variable $i :p
$i = 0;
//Vérification du mdp
if ($_POST['password'] != $_POST['confirm'] || empty($_POST['confirm']) || empty($_POST['password']))
{
$mdp_erreur = "Votre mot de passe et votre confirmation diffèrent ou sont vides";
$i++;
}
//Vérification de l'adresse email
//Il faut que l'adresse email n'ait jamais été utilisée (sauf si elle n'a pas été modifiée)
$requete1 = mysql_query('SELECT membre_email FROM forum_membres WHERE membre_id = '.$_SESSION['id'].'');
$data1 = mysql_fetch_assoc($requete1);
if (strtolower($data1['membre_email']) != strtolower($_POST['email']))
{
$nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM forum_membres WHERE membre_email = '".$_POST['email']."'"), 0);
if ($nombremail!= 0)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
$i++;
}
//On vérifie la forme maintenant
if (!preg_match("#^[a-z0-9A-Z._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['email']) || empty($_POST['email']))
{
$email_erreur2 = "Votre nouvelle adresse E-Mail n'a pas un format valide";
$i++;
}
}
//Vérification de l'adrese msn
if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['msn']) && !empty($_POST['msn']))
{
$msn_erreur = "Votre nouvelle adresse MSN n'a pas un format valide";
$i++;
}
//Vérification de la signature
if (strlen($_POST['signature']) > 200)
{
$signature_erreur = "Votre nouvelle signature est trop longue";
$i++;
}
//Vérification de l'avatar
if (!empty($_FILES['avatar']['size']))
{
//On définit les variables :
$maxsize = 30072; //Poid de l'image
$maxwidth = 100; //Largeur de l'image
$maxheight = 100; //Longueur de l'image
//Liste des extensions valides
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' );
if ($_FILES['avatar']['error'] > 0)
{
$avatar_erreur = "Erreur lors du tranfsert de l'avatar : ";
}
if ($_FILES['avatar']['size'] > $maxsize)
{
$i++;
$avatar_erreur1 = "Le fichier est trop gros :
(<strong>".$_FILES['avatar']['size']." Octets</strong>
contre <strong>".$maxsize." Octets</strong>)";
}
$image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
{
$i++;
$avatar_erreur2 = "Image trop large ou trop longue :
(<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre
<strong>".$maxwidth."x".$maxheight."</strong>)";
}
$extension_upload = strtolower(substr( strrchr($_FILES['avatar']['name'], '.') ,1));
if (!in_array($extension_upload,$extensions_valides) )
{
$i++;
$avatar_erreur3 = "Extension de l'avatar incorrecte";
}
}
?>
<div id="corps_forum">
<?php
echo'<p><a href ="./index.php">Index du forum</a> /
<a href="./voirprofil.php?action=modifier">Modification du profil</a></p>';
if ($i == 0) // Si $i est vide, il n'y a pas d'erreur
{
if (!empty($_FILES['avatar']['size']))
{
//On déplace l'avatar
$avatar = time();
$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
$avatar = "./images/avatars/".str_replace(' ','',$avatar).".".$extension_upload;
move_uploaded_file($_FILES['avatar']['tmp_name'],$avatar);
mysql_query('UPDATE forum_membres
SET membre_avatar = '.$nomavatar.'
WHERE membre_id = '.$_SESSION['id']);
}
//Une nouveauté ici : on peut choisisr de supprimer l'avatar
if (isset($_POST['Delete']))
{
mysql_query('DELETE membre_avatar
FROM forum_membres WHERE membre_id = '.$_SESSION['id']);
}
echo'<h1>Modification terminée</h1>';
echo'<p>Votre profil a été modifié avec succès !</p>';
echo'<p>Cliquez <a href="./index.php">ici</a>
pour revenir à la page d accueil</p>';
//On vérifie que les champs ne contiennent pas de html
//et on crypte le mot de passe
mysql_query("
UPDATE forum_membres
SET membre_mdp ='".$pass."' , membre_email = '".$email."' ,
membre_msn = '".$msn."' , membre_siteweb = '".$website."',
membre_signature = '".$signature."' ,
membre_localisation = '".$localisation."'
WHERE membre_id = '".$_SESSION['id']."'") or die (mysql_error());
//Et on définit de nouvelles variables de sesssion
//Pour celà on a besoin de la bdd
$requete = mysql_query('
SELECT membre_id, membre_rang
FROM forum_membres
WHERE membre_id = '.$_SESSION['id']);
if ($data = mysql_fetch_assoc($requete))
{
$_SESSION['id'] = $data['membre_id'];
$_SESSION['level'] = $data['membre_rang'];
}
}
else
{
echo'<h1>Modification interrompue</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant la modification du profil</p>';
echo'<p>'.$i.' erreur(s)</p>';
echo'<p>'.$mdp_erreur.'</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
echo'<p>'.$msn_erreur.'</p>';
echo'<p>'.$signature_erreur.'</p>';
echo'<p>'.$avatar_erreur.'</p>';
echo'<p>'.$avatar_erreur1.'</p>';
echo'<p>'.$avatar_erreur2.'</p>';
echo'<p>'.$avatar_erreur3.'</p>';
echo'<p> Cliquez
<a href="./voirprofil.php?action=modifier">ici</a> pour recommencer</p>';
}
?>
</div>
</body>
</html>
lerreur est a la ligne 31, apre la définition de la variable $requete1 a $data1
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /www/sautorne/modifprofil.php on line 31
ben85350
Messages postés610Date d'inscriptionvendredi 30 mai 2008StatutMembreDernière intervention 2 avril 201327 25 août 2008 à 20:21
salut !
ta requête juste avant la ligne 31 ne doit pas être bonne. Fait un echo pour voir ce qu'elle renvoie et tu verra peut être ton erreur (tu peut aussi tester cette requête dans phpmyadmin pour voir ton erreur).
Trouvez des réponses à vos questions sur la création de sites web, le référencement et les meilleures pratiques pour gérer un site. Échangez avec d'autres webmasters passionnés pour améliorer vos compétences en ligne et optimiser vos projets de site web.