Problème maj BDD php

ok merci pour la réponse rapide, je vais allé tester çà :wink:

Pendant ce temps j’ai une autre question, j’ai un code permettant via un formulaire de mettre à jour une adresse mail dans une base de données, le code fonctionne mais je dois actualiser manuellement la page pour voir l’adresse mail changée dans l’affichage.
Faut il changé l’ordre de mon code?


	<b>Adresse E-mail actuelle:</b><br />
    <?php
	// on se connecte à MySQL 
			$base = mysql_connect (chaine connexion);	
	//requete affichage mail en cours
			$sql='SELECT mail FROM contact';
	// on envoie la requête 
		$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 

	// on fait une boucle qui va faire un tour pour chaque enregistrement 
		while($data = mysql_fetch_assoc($req)) 
    { 
    // on affiche les informations de l'enregistrement en cours 
    	echo '<i>'.$data['mail'].'</i>'; 
    } 

// on ferme la connexion à mysql 
mysql_close(); 
?> 
<br /><br />

			
<form method="post" action="contact.php">
    <b>Nouvelle adresse de r&eacute;ception:</b><br />
    <input type="text" name="adresse" width="300" value="<?php if (isset($_POST['adresse'])) echo htmlentities(trim($_POST['adresse'])); ?>"><br />

	<?php
		if(isset($_POST['modifier'])){
			// on se connecte à MySQL 
			$base = mysql_connect (chaine connexion);
			// requete de MAJ
			$sql = 'UPDATE contact SET mail="'.mysql_escape_string($_POST['adresse']).'" WHERE id = 1';
			 
            mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
		}
		else { 
            $erreur = '<font color="red"><b>Probleme!!!.</b></font>'; 
        } 
		
	// on ferme la connexion à mysql 
	mysql_close();	
	?>
        
	<input type="submit" name="modifier" value="Modifier" /><br />
</form>

Je continu mon code de maj de mot de passe également :wink: je vous tiens au courant;)
Edité le 10/02/2009 à 09:50

Même problème … c’est compliqué de faire la mise à jour avant de sélectionner les données?

Je ne t’aiderai pas plus pour ce genre de problème maintenant que tu le connais et que tu sais comment le résoudre.

ok merci :wink: je voulais être sur qu’il fallait inversé :wink:

Voilà donc le code de MAJ de l’email fonctionne parfaitement :slight_smile:

Maintenant en adaptant quelque peu le code, je souhaite mettre à jour le contenu des pages - ici la page d’accueil mais ma requête ne fonctionne pas, j’obtiens cette erreur:

Erreur SQL !UPDATE accueil SET titre_accueil="* Bienvenue sur le site Univers Graphic *aa" texte_accueil="* site en construction *aa" WHERE id_accueil= 1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'texte_accueil="* site en construction *aa" WHERE id_accueil= 1' at line 1

et voici le code de MAJ:


<?php
          if(isset($_POST['maj'])){
	// on se connecte à MySQL 
	$base = mysql_connect (chaine de connexion);
	
                      // requete de MAJ
	$sql = 'UPDATE accueil SET titre_accueil="'.mysql_escape_string($_POST['titre']).'" texte_accueil="'.mysql_escape_string($_POST['text']).'" WHERE id_accueil= 1';
			 
                      mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
		}
	else { 
                     $erreur = '<font color="red"><b>Probleme!!!.</b></font>'; 
                     } 
?>

En SQL, le délimiteur de chaine c’est ’ pas " =>

$sql = 'UPDATE accueil SET titre_accueil=\''.mysql_escape_string($_POST['titre']).'\' texte_accueil=\''.mysql_escape_string($_POST['text']).'\' WHERE id_accueil= 1';

Merci Sans-Nom mais j’ai toujours la même erreur :s

Et avec une virgule juste devant texte_accueil?

:smiley: Je n’en reviens pas que ce soit si bête comme erreur! Une virgule^^

En tout cas merci beaucoup tu m’as bien aider:!!!

Super! Maintenant tout fonctionne :slight_smile:

Mais un petit problème, a chaque fois que je fais une mise à jour du texte, il me rajoute les balises et des / devant les quotes.
Comment empêcher cela?