Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/12/2011, 11h13   #1
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
Par défaut Formulaire dans tableau mysql

Bonjour,
Je liste une base de données et j'affiche les enregistrements par un tableau de cinq colonnes. Les deux premières affichent les enregistrements de la base et dans les trois autres j'ai des champs de formulaires que l'utilisateur doit remplir. Ensuite je dois récupèrer le tout. Mais j'ai un problème au niveau des variables que j'insère dans une autre base.
Auriez-vous une idée ?
Merci
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 11h30   #2
Membre actif
 
Avatar de Emyleen
 
Femme Emeline Dabée
Webmaster
Inscription : mars 2010
Messages : 136
Détails du profil
Informations personnelles :
Nom : Femme Emeline Dabée
Âge : 26
Localisation : France, Aveyron (Midi Pyrénées)

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2010
Messages : 136
Points : 171
Points : 171
Un problème? Oui mais quel problème?

Est-ce le nom de tes variables qui ne correspond pas aux noms de tes colonnes en base de données? Ou alors peut être tu n’appelles pas la table de la bonne façon?

Bref un peu plus de précision serait bienvenue
Emyleen est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2011, 11h35   #3
Membre éclairé
 
Avatar de themadmax
 
Inscription : juillet 2005
Messages : 424
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 424
Points : 383
Points : 383
Si tu veux tout récupérer il te faut un seul formulaire.
Tu dois donc générer des nom d'identifiant des champs unique: DATA_1, DATA_2...
Dans ton php tu peux bouclé sur des noms dynamiques de tes variables.
Une autre solution serai de faire des appels Ajax pour chaque champs, pour enregistré chaque modification de l'utilisateur un à un.
Mais surtout d'ecris plus ton problème...
__________________
________________________________________________
http://bliquid.fr : Blog sur Android et l'Acer Liquid
themadmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 21h15   #4
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
merci pour ces réponses,
Donc, quand je liste la base cela génère x lignes et j'ai construis mon application pour que dans la colonne 1 s'affiche les noms, dans la colonne 2 les prénoms et dans les 3 colonnes suivantes, des champs de formulaire de type texte pour que l'utilisateur puisse entrer des données. Le problème c'est de récupèrer les données, entre autre, des champs texte. Peut-être avec des variables de type tableau, voilà un bout du code.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$query = mysql_query("SELECT distinct noms, prenoms FROM structure as s, obj as o WHERE s.dga='$indicatif'") or die (mysql_error());
 while ($array = mysql_fetch_assoc($query)) {
echo "<tr>";
	echo "<td><font face=Arial size=2><strong>";
	echo $array['lib_ag'];echo"</td>";
	echo "<td align=center><font face=Arial size=2><strong>";
	echo $array['objectif'];echo"</td>";
	echo "<td align=center><font face=Arial size=2><strong>";
	echo "<form name=form1> <p align=center><input type=text name=pas1 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=prs1 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=reals1 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center><font face=Arial size=2><strong>";
	echo "<form name=form1> <p align=center><input type=text name=pas2 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=prs2 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=reals2 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center><font face=Arial size=2><strong>";
	echo "<form name=form1> <p align=center><input type=text name=pas3 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=prs3 maxlength=3 size=3>&nbsp;</p>";
	echo"</td>";
	echo "<td align=center>";
	echo "<p><input type=text name=reals3 maxlength=3 size=3>&nbsp;</p></form>";
	echo"</td>";
 
echo "</tr>";
 
}
Merci
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 10h06   #5
Membre éclairé
 
Avatar de Sekigawa
 
Développeur Web
Inscription : mars 2008
Messages : 426
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mars 2008
Messages : 426
Points : 316
Points : 316
Yo

Comme l'as dit "themadmax" commence par ne faire qu'un seul formulaire et de récupérer tes champs posté avec des id uniques.

Ton code est déjà très mal construit.. Tu fais un formulaire pour chaque "structure" et pour chaque input, sachant que tu fermes le formulaire qu'une fois... Je te conseil de commencer par regarder des tuto

A+
__________________
Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.
Sekigawa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 14h30   #6
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
Merci,
Ok, je vais mettre en peu d'ordre dans le code. En ce qui concerne les champs postés, les ID uniques seront incrémentés par le nom de lignes affichés. Je vais essayer ça.
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 14h36   #7
Membre éclairé
 
Avatar de themadmax
 
Inscription : juillet 2005
Messages : 424
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 424
Points : 383
Points : 383
voici une exemple:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<form method="post" action="post.php">
<table>
<?PHP
$db = sqlite_open( "test.db" ) ;
$result = sqlite_query($db,'select bar from foo');
$i = 1;
?>
 
<?PHP while ($row = sqlite_fetch_array($result)): ?>
	<tr>
		<td><?PHP echo $row["bar"]; ?></td>
		<td><input type="text" name="uniq_id_<?PHP echo $i++; ?>" maxlength="3" size="3"></td>
	</tr>
<?PHP endwhile; ?>
</table>
</form>
__________________
________________________________________________
http://bliquid.fr : Blog sur Android et l'Acer Liquid
themadmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 21h29   #8
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
j'avance petit à petit, mais je vais encore abuser, peux-tu me détailler le fichier post.php pour que je vois bien comment récupérer le variable uniq_id_.
Merci
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 21h58   #9
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
Voilà, grace à toi et en se creusant la tête, j'ai résolu mon problème.
je récupère mes données avec ces lignes :
Code :
1
2
3
4
for ($i = 1; $i <= 10; $i++) {
   echo $_POST['pas1_'.$i.''];
   echo "<br>";
}
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h11.


 
 
 
 
Partenaires

Hébergement Web