Modifier une TABLE avec un formulaire sous forme de tableau
Bonjour,
j'ai un probleme que j'arrive pas a resoudre
si quelqu'un peut m'aider ca serai vraiment sympas
la 1ere page qui est dessous(en image) sa marche , mais la 2eme page ne marche pas
en fait ,dans la 2eme page je veux recuperer les variable du tableau et faire les modification sur la table de ma BDD
http://nsa29.casimages.com/img/2012/...1040963156.jpg
1 ere page pour editer ma table a partir de ma BDD sous forme de tableau et y inclure un formulaire
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 39 40 41
| <form action="modification.php" method="post">
<table align=center width=00 bgcolor="#FFFFFF">
</tr>
<td align=center width=100 bgcolor="#DC143C">Selectionner les reservations</td>
<td align=center width=130 bgcolor="#DC143C">N° du Gite</td>
<td align=center width=150 bgcolor="#DC143C">Date de début de séjour </td>
<td align=center width=150 bgcolor="#DC143C">Date de fin de séjour </td>
<td align=center width=130 bgcolor="#DC143C">N° de réservation</td>
</tr>
<?php
$host = 'localhost';$user = '....';$pass = '....';
$db = '...';
$link = mysql_connect($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // Connexion à MySQL
mysql_select_db($db);
$select = "SELECT * FROM RESERVATION ORDER BY NoRes";
$result = mysql_query($select,$link);
$total = mysql_num_rows($result);
/* Il manque une distinction des noms des cellules des tableaux, l'utilisation d'index s'impose */
$i=0;//on initialise l'index
while ($row = mysql_fetch_array($result)){
$NoGite=$row['NoGite'];
$DateResDeb = $row['DateResDeb'];
$DateResFin=$row['DateResFin'];
$NoRes=$row['NoRes'];
echo "<tr>";
echo "<td align=center bgcolor='#DCDCDC'><input type='checkbox' name='select[$i]' value='$select' /></td>";
echo "<td align=center bgcolor='#DCDCDC'><input type='text' font='verdana' name='NoGite[$i]' value='$NoGite' /></td>";
echo "<td align=center bgcolor='#DCDCDC'><input type='text' font='verdana' name='DateResDeb[$i]' value='$DateResDeb' /></td>";
echo "<td align=center bgcolor='#DCDCDC'><input type='text' font='verdana' name='DateResDeb[$i]' value='$DateResFin' /></td>";
echo "<td align=center bgcolor='#DCDCDC'><input type='text' font='verdana' name='NoRes[$i]' value='$NoRes' /></td>";
echo "</tr>\n";
$i++;// on incrémente l'index
}
// on libère le résultat
mysql_free_result($result);
mysql_close(); // Déconnexion de MySQL
?>
</table>
<input type="hidden" name="nb_lignes" value="<?php echo $i ?>">
<input type="submit" name="valid_liste" value="VALIDER" >
</form> |
2 eme page pour recuperer les variable du tableau et faire les modification sur la table de ma BDD
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
| <?php
//* Récup des données
$nb_lignes=$_POST['nb_lignes'];//*/
$host = 'localhost';$user = '....';$pass = '....';
$db = '....';
mysql_connect($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // Connexion à MySQL
mysql_select_db($db);
$link = mysql_connect($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // Connexion à MySQL
mysql_select_db($db);
$select = "SELECT * FROM RESERVATION ORDER BY NoRes";
$result = mysql_query($select,$link);
$total = mysql_num_rows($result);
$nb_case=0;
for ($i=0;$i<$nb_lignes;$i++){
if(!isset($_POST['NoGite'][$i])) {
$NoGite=$_POST['NoGite'][$i];
$DateResDeb=$_POST['DateResDeb'][$i];
$DateResFin=$_POST['DateResfin'][$i];
$NoRes=$_POST['NoRes'][$i];
$nb_lignes=$_POST['nb_lignes'][$i];
$select = "SELECT * FROM RESERVATION where NoGite='$_POST[NoGite]'"; // on récupère le numero de Reservation en fonction de l'ID
$result = mysql_query($select);
$recup_valeurs=mysql_fetch_array($result);
echo "Pour le Gite ".$recup_valeurs['NoGite']." on modifie le NoRes ".$NoRes." <br/>";
mysql_query("UPDATE RESERVATION SET NoRes=".$NoRes." WHERE NoGite=".$NoGite."");
$nb_case++;//incrémentation
}
}
if($nb_case==0) {// Si aucune case n'est cochée
echo '<font font="arial" size="2" color="red"><b>Vous devez selectioner au moins une reservation</b></font>';
}//*/
var_dump($_POST);
// on libère le résultat
mysql_free_result($result);
mysql_close(); // Déconnexion de MySQL
?> |
j'ai des messages d'erreur
Notice: Undefined index: nb_lignes in c:\program files\easyphp1-8-modgsi\www\site des gites\adherents\modification.php on line 3
Vous devez selectioner au moins une reservation
Notice: Undefined variable: result in c:\program files\easyphp1-8-modgsi\www\site des gites\adherents\modification.php on line 30
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8-modgsi\www\site des gites\adherents\modification.php on line 30