réaffichage formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : réaffichage formulaire

par zeus » 26 août 2006, 15:47

modération : Les messages hors-sujet dans cette conversation ont été supprimés

basdom : Le seul reproche qui t'es fait, c'est de ne pas avoir utilisé les balises
 et [code].

Merci de reprendre le cours de la discussion.[/color]

par charabia » 25 août 2006, 22:52

Donc tu arrives bien à récupérer les ID.

ALors si tu fait :
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['id'].'</font></td><br>';  
echo '<td bgcolor="#FFFFFF"><font size="5"><a href="modif.php?id='.$donnees['id'].'">'.$donnees['Ref'].'</font></td><br></a>';
Tu obtiens quoi ?

par basdom » 25 août 2006, 22:45

l echo m affiche les différentes id de ma base

basdom

par charabia » 25 août 2006, 22:40

N'oublies pas d'utiliser les balises PHP pour colorer ton code !
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['id'].'</font></td><br>'; 
echo '<td bgcolor="#FFFFFF"><font size="5"><a href="modif.php?id=$id"'.$donnees['Ref'].'">'.$donnees['Ref'].'</font></td><br></a>'; 
Dans ton premier TD, pour récupérer l'ID tu utilises $donnees['id'].
Dans ton second TD, pour récupérer ce même ID tu écris $id. C'est pas très logique.

Ensuite arrives-tu à récupérer correctement $donnees['id'] ?

Si tu y fais un echo qu'as-tu ?

par basdom » 25 août 2006, 22:32

bonsoir

bon voila ou j en suis :

champ id modifié come tu me l a dit

le 1 er code
//crée la connexion 
$serveur     = "localhost";
$utilisateur = "root";
$motDePasse  = "";
$base        = "test";
$fichier     = "consult.php"; 


 mysql_connect($serveur,$utilisateur,$motDePasse) or die("Impossible de se connecter au serveur de bases de données.");
    
 mysql_select_db($base) or die("Base de données non trouvée.");	


//paramétrage de la requete 
$req="SELECT * from produits ";

$reponse=mysql_query($req);


echo '<center><table border="1" bgcolor="#FFFFFF">';
//on affiche les titres du tableau 
        echo '<tr>'; 	
		echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">id</font></b></td>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Référence</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Gencod</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Pcb</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Spcb</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">haucol</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">larcol</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">loncol</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">pdbcol</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">colcou</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">coupal</font></b></td>'; 
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">uvcpal</font></b></td>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">pdbpal</font></b></td>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">volpal</font></b></td>';
       	echo '</tr>'; 


		
while($donnees = mysql_fetch_array($reponse))
{

$id=$donnees["id"];
	

echo '<tr>'; 	
    echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['id'].'</font></td><br>';
    echo '<td bgcolor="#FFFFFF"><font size="5"><a href="modif.php?id=$id"'.$donnees['Ref'].'">'.$donnees['Ref'].'</font></td><br></a>';          
    echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Gencod'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Pcb'].'</font></td><br>';	
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Spcb'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['haucol'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['larcol'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['loncol'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['pdbcol'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['colcou'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['coupal'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['uvcpal'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['pdbpal'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['volpal'].'</font></td><br>';	
	}

  echo '</tr>'; 
le 2 eme code :
//crée la connexion 
$serveur     = "localhost";
$utilisateur = "root";
$motDePasse  = "";
$base        = "test";



mysql_connect($serveur,$utilisateur,$motDePasse) or die("Impossible de se connecter au serveur de bases de données.");
    
mysql_select_db($base) or die("Base de données non trouvée.");	

$reponse = mysql_query("SELECT * FROM produits WHERE id =".$_GET['id'])or die(mysql_error()) ; 

while ($donnees=mysql_fetch_array($reponse))


{
    echo '<td bgcolor="#FFFFFF"><font size="15">'.$donnees['Gencod'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="10">'.$donnees['Ref'].'</font></td><br>';
	echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Pcb'].'</font></td><br>';	
	
}
voilal e message que j obtiens

Code : Tout sélectionner

Champ '$id' inconnu dans where clause
je n arrive pas à faire le lien
echo '<td bgcolor="#FFFFFF"><font size="5[b]"><a href="modif.php?id=$id"'.$donnees['Ref'].'">'.$donnees['Ref'].'</font></td><br></a>'; 
pour arriver sur l id sur lequel je clique

basdom

par charabia » 25 août 2006, 22:19

Soit plus précis. A ce niveau maintenant qu'as-tu comme erreur ? As tu changé le champ ID en INT ? As-tu fais toutes les modifs ?

Si oui montres nous le dernier code que tu as fait.

par basdom » 25 août 2006, 22:13

bonsoir

ok mais trop vu le $_GET je l avoue

mais alors pourquoi ca marche pas

basdom

par charabia » 25 août 2006, 22:09

$_GET['$id']
est incorrect. As-tu étudier l'utilisation du GET ?

Fait bien attention à ton code, tu verras très vite les erreurs. En voulant aller trop vite, tu fais des erreurs là où tu n'en avais pas fait avant.

par Invité » 25 août 2006, 22:04

bonsoir

ca ne marche pas malgre tous vos conseils

sur la page modif ca me met
"Champ '$id' inconnu dans where clause"


basdom

par charabia » 25 août 2006, 21:54

Ton id devrait être en INT, clé primaire et auto incrémenté.

APrès avoir fait ce changement, je ne vois pas trop ce qui te bloque. Tu réussis à récupérer toutes tes données Ref...etc en faisant $donnees['Gencod'].

Fait de même pour ton champ ID.

par basdom » 25 août 2006, 21:37

bonsoir

ma requete dans le fichier modif.php

$reponse = mysql_query("SELECT * FROM produits WHERE id =".$_GET['$id'])or die(mysql_error()) ;

la requete dans mon fichier de départ
$req="SELECT * from produits ";

la structure de ma table:
CREATE TABLE `produits` (
`id` varchar(5) NOT NULL default '',
`Ref` varchar(6) NOT NULL default '',
`Gencod` varchar(13) NOT NULL default '',
`Pcb` char(3) NOT NULL default '',
`Spcb` varchar(5) NOT NULL default '',
`haucol` char(3) NOT NULL default '',
`larcol` char(3) NOT NULL default '',
`loncol` varchar(5) NOT NULL default '',
`pdbcol` varchar(5) NOT NULL default '',
`colcou` varchar(5) NOT NULL default '',
`coupal` varchar(5) NOT NULL default '',
`uvcpal` varchar(5) NOT NULL default '',
`pdbpal` varchar(5) NOT NULL default '',
`volpal` varchar(5) NOT NULL default ''
) TYPE=MyISAM;


merci de votre aide

basdom

par DocType » 25 août 2006, 21:26

code entre balises php...
montre ta requete ainsi que la structure de ta table stp

par basdom » 25 août 2006, 21:21

bonsoir

encore merci de ton aide

voici ce que j ai fait
juste extrait du code a partir de la boucle


while($donnees = mysql_fetch_array($réponse))
{

$id=$donnees["id"];


echo '<tr>';

echo '<td bgcolor="#FFFFFF"><font size="5"><a href="modif.php?id=$id"'.$donnees['Ref'].'">'.$donnees['Ref'].'</font></td><br></a>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Gencod'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Pcb'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['Spcb'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['haucol'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['larcol'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['loncol'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['pdbcol'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['colcou'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['coupal'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['uvcpal'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['pdbpal'].'</font></td><br>';
echo '<td bgcolor="#FFFFFF"><font size="5">'.$donnees['volpal'].'</font></td><br>';
}

echo '</tr>';




?>
et voila ce que ca me met sur ma page modif.php

" Notice: Undefined index: $id in c:\program files\easyphp1-7\www\html\modif.php on line 16
Erreur de syntaxe près de '' à la ligne 1"

par charabia » 25 août 2006, 20:42

Je vais essayer d'expliquer :)

Alors dans ta table, chaque produit a un identifiant unique n'est-ce pas ? Il s'agit souvent de ID qui est clé primaire.

C'est de ce ID là dont je te parle. Je ne sais pas si ton Ref fait référence à cet ID, il faudrait la structure de ta table pour que je t'explique mieux.

Là dans l'exemple que tu me redonnes, tu conserves toujours ce id=1 alors que cet ID doit être la donnée récupérée du champ ID de ta table.

Si tu as 2 enregistrements par exemple, dans ta boucle lorsque tu récupères les données, il faut le faire aussi pour ton champ ID comme tu le fait pour tous tes autres champs.

Tu comprends mieux ?

par basdom » 25 août 2006, 18:07

bonsoir

pige pas

j ai deux enregitrements dans ma base un avec l id 1 l' autre avec l' id 2

qu est ce que je dois mettre a la place de cette ligne

echo '<td bgcolor="#FFFFFF"><font size="5"><a href="modif.php?id=1" '.$donnees['Ref'].'">'.$donnees['Ref'].'</font></td><br></a>';

pour que en cliquant sur ma ref je puisse arriver a mon fichier modif qui affiche la ref cliquée

merci

basdom