Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
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 08/12/2010, 08h32   #1
Invité de passage
 
Vincent Maurel
Inscription : novembre 2010
Messages : 19
Détails du profil
Informations personnelles :
Nom : Vincent Maurel

Informations forums :
Inscription : novembre 2010
Messages : 19
Points : 2
Points : 2
Par défaut problème pour insérer des données

Bonjour !

Je souhaiterai insérer plusieurs lignes en une fois dans une table, en passant par un formulaire que je génère moi-même, sans utiliser symfony. mais je n'arrive pas à insérer des données...

le shéma de la table:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cashgameresultat:
  columns:
    cashgame_id: integer
    joueur_id: integer
    caves:
      type: integer
      notnull: true
    cave_finale:
      type: integer
      notnull: true
  relations:
    cashgame:
      foreignAlias: resultats
    joueur:
      foreignAlias: resultatsCashGame
le formulaire que j'ai généré:

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
 
<form id="joueurCashs" action="../../insertResultats" onsubmit="return checkEntrees()" method="post"><input id="nbJoueursSend" value="3" type="hidden">
 
<input id="maxCaves" value="400" type="hidden">
<input id="idCashGame" value="10" type="hidden">
 
<select id="j1" name="joueur_id" onchange="actualisePrizepool()">
 
<option value="">Choisir Joueur</option><option value="168"> Acsolo </option>
<option value="147"> X GAME </option><option value="180"> YO </option>
etc...
</select>
 
<select id="nbcavesj1" name="nbcavesj1" size="1" onchange="actualisePrizepool()">
<option value="0">0</option>
<option value="1">1</option><option value="2">2</option>
<option value="3">3</option>
</select>
 
<input id="jetonsj1" name="jetonsj1" size="4" onblur="actualisePrizepool()" type="text"></center>
 
<select id="j2" name="joueur_id" onchange="actualisePrizepool()">
<option value="">Choisir Joueur</option><option value="168"> Acsolo </option>
<option value="147"> X GAME </option><option value="180"> YO </option>
etc...
</select>
 
<select id="nbcavesj2" name="nbcavesj2" size="1" onchange="actualisePrizepool()">
<option value="0">0</option>
<option value="1">1</option><option value="2">2</option>
<option value="3">3</option>
</select>
 
<input id="submitResultats" value="Enregistrer les résultats" type="submit">
</form>
(j'ai volontairement simplifié pour que ce soit plus clair)

et enfin dans mon action la partie qui me pose problème: insérer les données quand on envoi le formulaire.

J'ai essayé:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
$nbjoueurs = $_POST["nbJoueursSend"];
    $idCashGame = $_POST["idCashGame"];
    $resultat = new cashgameresultat();
    for ($i=1 ; $i<=$nbjoueurs; $i++)
    {
    	$resultat = create_cashgameresultat(array(
    						'cashgame_id' =>  $idCashGame,
    						'joueur_id' => $_POST["j"+i].value,
    						'caves' =>  $_POST["nbcavesj"+i].value,
    						'cave_finale' =>  $_POST["jetonsj"+i].value,
    						));
    	$resultat->save();
    }
et aussi

Code :
1
2
3
4
5
6
7
8
 
    $resultat->setCashgameIdame_id($idCashGame);
    for ($i=1 ; $i<=$nbjoueurs; $i++)
    {
    	$resultat->setJoueurId($_POST["j"+i].value);
    	$resultat->setCaves($_POST["nbcavesj"+i].value);
    	$resultat->setCaveFinale($_POST["jetonsj"+i].value);
    	$resultat->save();

et aussi

Code :
1
2
3
4
5
6
7
    $resultat->cashgame_id = $idCashGame;
    for ($i=1 ; $i<=$nbjoueurs; $i++)
    {
    	$resultat->joueur_id = $_POST["j"+i].value;
    	$resultat->caves = $_POST["nbcavesj"+i].value;
    	$resultat->cave_finale = $_POST["jetonsj"+i].value;
    	$resultat->save();

et rien ne fonctionne...
BritsFan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2010, 08h32   #2
Invité de passage
 
Vincent Maurel
Inscription : novembre 2010
Messages : 19
Détails du profil
Informations personnelles :
Nom : Vincent Maurel

Informations forums :
Inscription : novembre 2010
Messages : 19
Points : 2
Points : 2
bon apres avoir cherché pas mal, c'était encore des erreurs de syntaxe et pas forcément de méthode. voilà le code qui marche:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
    $nbjoueurs = $_POST["nbJoueursSend"];
    $idCashGame = $_POST["idCashGame"];
    for ($i=1 ; $i<=$nbjoueurs; $i++)
    {
    	$resultat = new cashgameresultat();
    	$resultat->setCashgameId($idCashGame);
    	$resultat->setJoueurId($_POST["j".$i].value);
    	$resultat->setCaves($_POST["nbcavesj".$i].value);
    	$resultat->setCaveFinale($_POST["jetonsj".$i].value);
    	$resultat->save();
    }
et j'avais oublié des attributs "name" dans le formulaire
BritsFan 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 20h44.


 
 
 
 
Partenaires

Hébergement Web