Ajout enregistrement buguer

Petit nouveau ! | 7 Messages

07 févr. 2010, 18:30

Bonjour,

Je suis débutant en PHP et j'ai essayé de modifier du code php que l'on m'avait fait !

Mais soucis, lorsque j'essaye d'ajouter une champ, celui-ci n'est pas pris en compte et quand j'essaye de le modifier, rien ne s'affiche :s

Si quelqu'un pouvais me dire d'où vient mon erreur :
if ($admin_auth) {

	$action=$_GET['action'];

	if (($action == "create") || ($action == "edit")) {

		$etape=$_GET['etape'];

		$nom=$_POST['nom'];
		$telephonne=$_POST['telephonne'];
		$fax=$_POST['fax'];
		$mobile=$_POST['mobile'];
		$adresse=$_POST['adresse'];
		$cp=$_POST['cp'];
		$ville=$_POST['ville'];
		$email=$_POST['email'];
		$cartepro=$_POST['cartepro'];
		$rcs=$_POST['rcs'];
		
		if ($action == "edit") {
			if ($nom) {
				$id=$_GET['id'];
				$query=mysql_db_query($mysql_base,"UPDATE coordonnee set nom='$nom', telephonne='$telephonne', fax='$fax', mobile='$mobile', adresse='$adresse', cp='$cp' ville='$ville' email='$email' cartepro='$cartepro' rcs='$rcs' WHERE id='$id'",$db);
				//echo mysql_errno() . ": " . mysql_error() . "\n";
				echo "
<b>Renommer</b> (<a href=\"?inc=admin_coordonnee\">Retour</a>)<hr><br>
Coordonnée modifiée avec succès<br><br><a href=\"?inc=admin_coordonnee\">Retour</a>
";
			}
			else {
				$query=mysql_db_query($mysql_base,"SELECT * FROM coordonnee WHERE id='$id'",$db);
					$nom=mysql_result($query,0,"nom");
					$telephonne=mysql_result($query,0,"telephonne");
					$mobile=mysql_result($query,0,"mobile");
					$adresse=mysql_result($query,0,"adresse");
					$cp=mysql_result($query,0,"cp");
					$ville=mysql_result($query,0,"ville");
					$email=mysql_result($query,0,"email");
					$cartepro=mysql_result($query,0,"cartepro");
					$rcs=mysql_result($query,0,"rcs");
							}
		}

		if ((!$etape) && (!$nom)) {

		echo "<b>";if($action=="create"){echo$admin_maison_titre_ajouter;}else echo$admin_maison_titre_renommer;echo"</b><hr><br><br>";
		
			echo "
		";if($action=="create"){echo"<b>Descriptif</b> > Validation<br><br><br>";}echo"

		<form method=\"post\" action=\"?inc=admin_coordonnee&action=";if($action=="create"){echo"create&etape=2&id=$id";}else echo"edit&id=$id";echo"\">
		<table width=\"50%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
			<tr>
		    <td width=\"40%\"><b>Nom</b> : </td>
		    <td width=\"60%\"><label>
		    <input type=\"text\" class=\"police\" name=\"nom\" ";echo"value=\"$nom\"";echo"/>
		    </label></td>
		  </tr>
			<tr>
		    <td width=\"40%\"><b>Téléphonne</b> : </td>
		    <td width=\"60%\"><label>
		    <input type=\"text\" class=\"police\" name=\"telephonne\" ";echo"value=\"$telephonne\"";echo"/>
		    </label></td>
		  </tr>
		  <tr>
		    <td><b>Mobile</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"mobile\" ";echo"value=\"$mobile\"";echo"/></td>
		  </tr>
		  <tr>
		    <td><b>Adresse</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"adresse\" ";echo"value=\"$adresse\"";echo"/></td>
		  </tr>
		  <tr>
		  <tr>
		    <td><b>Code Postal</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"cp\" ";echo"value=\"$cp\"";echo"/></td>
		  </tr>
		  <tr>
		    <td><b>Ville</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"ville\" ";echo"value=\"$ville\"";echo"/></td>
		  </tr>
		  <tr>
		    <td><b>EMail</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"email\" ";echo"value=\"$email\"";echo"/></td>
		  </tr>
		  <tr>
		    <td><b>Carte Professionnel</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"cartepro\" ";echo"value=\"$cartepro\"";echo"/></td>
		  </tr>
		  <tr>
		  <tr>
		    <td><b>RCS</b> : </td>
		    <td><input type=\"text\" class=\"police\" name=\"rcs\" ";echo"value=\"$rcs\"";echo"/></td>
		  </tr>
		  <tr>
		    <td>&nbsp;</td>
		    <td><br><label>
		      <input type=\"submit\" class=\"police\" name=\"Submit\" value=\"";if($action=="create"){echo"Enregistrer";}else echo"Editer";echo"\" />
		    </label></td>
		  </tr>
		</table>
		</form>
		";
		}
		
		elseif ($etape == 2) {
		echo "<b>";if($action=="create"){echo"Ajouter un maison";}else echo"Modifier un maison";echo"</b> (<a href=\"?inc=admin_coordonnee\">Retour</a>)<hr><br><br>";
			if ($nom) {
				$query=mysql_db_query($mysql_base,"INSERT INTO coordonnee VALUES ('$telephonne','$fax','','$mobile','$adresse','','$cp','$ville',''','$email','$cartepro','','$rcs','',')",$db);
				$query=mysql_db_query($mysql_base,"SELECT id FROM coordonnee ORDER BY id desc LIMIT 0,1",$db);
				$id=mysql_result($query,0,"id");
			}
				
				
		echo "	
	Descriptif > <b>Validation</b>
	<br><br><br>
	Coordonnée crées avec sucès<br><br>
	<a href=\"?inc=admin\">Retour à l'administration</a>
	
	";

		}

	}

	elseif (!$action) {
		echo "<b>Gérer les Coordonnées</b> ";
		echo "(<a href=\"?inc=admin_coordonnee&action=create\">Ajouter une coordonnée</a>)<hr><br>";


		$query=mysql_db_query($mysql_base,"SELECT * FROM coordonnee ORDER by id desc",$db);
		if (@mysql_num_rows($query)) {
			echo "<b>Liste coordonnée créees</b> :<br>";
			while ($row = mysql_fetch_array($query)) {
				$id=$row['id'];
				$nom=$row['nom'];
			
				echo "
				<br>
				$categorie_affichage
				<div class=\"borduretableau\">
				<b># $id</b> : $nom [<a href=\"?inc=admin_coordonnee&action=edit&id=$id\">Editer</a>] 
				</div>
				";
			}
		}
		else { echo $admin_maison_aucune; }
		echo "<br><br><a href=\"?inc=admin\">Retour à l'Administration</a>";

	}
}
else { echo "<b>Erreur</b> : Vous devez être identifié pour acceder à cette page"; }
Merci par avance,

Hygis.

Petit nouveau ! | 7 Messages

08 févr. 2010, 23:19

un petit up,

personne n'a une idée ?

merci d'avance,

Hygis

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

09 févr. 2010, 15:11

Il faudrait que tu donnes un peu plus d'informations et un code un peu plus ciblé... quel champ as-tu ajouté ? quand est-ce qu'il n'est pas pris en compte ? as-tu des messages d'erreurs ?

A première vue, ta requête d'update contient des erreurs de syntaxe :
UPDATE coordonnee set nom='$nom', telephonne='$telephonne', fax='$fax', mobile='$mobile', adresse='$adresse', cp='$cp' ville='$ville' email='$email' cartepro='$cartepro' rcs='$rcs' WHERE id='$id'
As-tu essayé d'affiché la requête générée et de l'exécuté sous phpMyAdmin pour vérifier le résultat ? Tu peux aussi utiliser mysql_error() après l'exécution pour voir rapidement les erreurs sql d'une requête... En l'occurence, dans un premier temps il manque des virgules pour séparer tes 5 derniers champs....
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

09 févr. 2010, 19:47

Merci, pour ton aide,

enfaite, j'ai ajoute une table dans ma base et j'ai modifier un fichier php pour pouvoir la modifier.

Les enregistrements s'affiche bien,
mais quand je fais modifier, rien ne s'affiche
et quand je fais ajouter, je peux remplir mes champs mais quand je valide rien ne s'ajoute.

Après avoir suivi tes conseils, j'ai ajouté le mysql_error() et j'optiens l'erreur : Query was empty.
Mais j'ai pas compris l'histoire d'affiché la requête générée et l'exécution sur phpmyadmin.

Apres recherche sur internet, j'ai toujous pas identifiée mon erreur.

Merci,

Hygis.

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

09 févr. 2010, 20:09

Mmh bizare comme erreur... c'est bien le mysql_error() qui est sous ton update que tu as réactivé ?
Il devrait te mettre une erreur de syntaxe SQL au niveau de "cp='$cp' ville='$ville' email='$email' ... ", où comme indiqué plus haut, tu as oublié les virgules pour séparer les instructions...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...