Page 1 sur 1

Ajout enregistrement buguer

Posté : 07 févr. 2010, 18:30
par hygis
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.

Re: Ajout enregistrement buguer

Posté : 08 févr. 2010, 23:19
par hygis
un petit up,

personne n'a une idée ?

merci d'avance,

Hygis

Re: Ajout enregistrement buguer

Posté : 09 févr. 2010, 15:11
par Ryle
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....

Re: Ajout enregistrement buguer

Posté : 09 févr. 2010, 19:47
par Invité
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.

Re: Ajout enregistrement buguer

Posté : 09 févr. 2010, 20:09
par Ryle
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...