Vous n'êtes pas identifié(e).
Pages :: 1
bonjour a tous,
je souhaite updater la tables avec des nouveau parametres selons le id que j affiche
et le probleme est que seulement le dernier id est pris en compte.quand je fais un echo pour verifier je le vois.
Merci pour toute aide.
$heure = date("d/m/y", time());
include ('connect.php');
include ('entete.php');
//------
//$pousada = $_GET['pousada'];
$sql = "SELECT id,nome,pousada,matricula,calca,camisa FROM usiminas where pousada ='BELAS-ARTES' ORDER by nome ASC";
$resultat = mysql_query($sql);
if (!$resultat ){
die('Invalid query: ' . mysql_error());
}
## quelle est la dimension du résultat ?
$nblignes=mysql_num_rows($resultat);
$nbchamps=mysql_num_fields($resultat);
## affichage de l'en-tete du tableau HTML avec les noms des champs
echo "<table border=2 CELLPADDING=\"5\" CELLSPACING=\"5\" WIDTH=\"800\" align=\"CENTER\">
<tr>";
// affichage des entete de colonne
for($i=0; $i < $nbchamps; $i++) {
$tabchamps[$i] = mysql_field_name($resultat,$i);
//echo "<th>$tabchamps[$i]</th>";
}
### affichage des enregistrements du résultat
for($i=0; $i < $nblignes; $i++) {
$ligne = mysql_fetch_row($resultat);
echo"<tr> <td><input type='text' name='varid' value ='".$ligne[0]."'</td>";
echo "<td>".$ligne[1]."</td>";
echo "<td>".$ligne[2]."</td>";
echo "<td>".$ligne[3]."</td>";
echo "<td><input type=\"text\" name=\"calca\" value ='".$ligne[4]."'></td>";
echo "<td><input type=\"text\" name=\"camisa\" value ='".$ligne[5]."'></td>";
}
?>
<tr><td><input type="submit" name="control" value="Salvar"></td></tr>
</form>
</table>
<table>
<?php
echo $y ;
//$varcalca = $_GET['calca'];
//$varcamisa = $_GET['camisa'];
// Déclaration des différents array()
//if ($_GET['varid']!="")
{
for($i=0; $i <= $ligne[0][0]; $i++){
$to = $ligne[$i];
echo "<td>".$to."</td>";
}
// update de la table
// $query = mysql_query("UPDATE usiminas SET calca=\"$varcalca\", camisa=\"$varcamisa\" WHERE id ='$valor_id'") or die(mysql_error());
//echo $valor_id;
}
//fecha a conexão com o banco
mysql_close();
//}
?>
VICTOR HUGO DE SOUZA BELAS-ARTES 28384
WASHINGTON ESEQUIEL DE SOUZA BELAS-ARTES 22183
WILSON ANTONIO DE ARAUJO BELAS-ARTES 26360
WILSON GOMES DE BRITO BELAS-ARTES 26833
seule le resultat suivant s affiche.
415 WILSON GOMES DE BRITO BELAS-ARTES 26833 1
Edit modo : merci d'utiliser les balises bbcode pour la colorisation syntaxique
Hors ligne
salut,
j'ai testé ton code, qui bien que peu usuel est fonctionnel.
je pense qu'il y a un soucis de conception à l'affichage : l'id ne doit pas etre modifiable tu t'expose à un refus du serveur (si c'est bien comme je pense une clef primaire, elle est unique donc y a de très grande chance que ça se morde la queue).
quand a la dernière boucle for, je ne vois pas d'ou sor $ligne[0][0] et bien entendu $ligne ne contient le dernier tuple de la requete puisse que tu l'écrase à chaque "tour" de la boucle for. Pour tous les garder il te faudrais écrire $ligne[]mysql_fetch_rows( .);
les lignes 47 à 58, sont pour moi, la partie de validation du formulaire. dans ce cas il te faut déja tester si $_GET['varid'] existe (avec isset par exemple). ensuite tu peut tester si elle est vide). après la boucle de sert à rien (expliqué plus haut).
ensuite tu n'utilise pas $_GET mais directement les noms de champs dans la construction de la requete, ce qui n'est sécurisé et surtout pas possible si ton paramètre register_globals est à off (en gros pas d'auto déclaration de variable à la suite de soumission de formulaire, ce n'est sécurisé).
peut donner plus d'info sur ce qui ne va pas, si je n'ai pu t'aider avec ces quelques lignes ?
@+
Il en faut peu pour être heureux pompompompompompompompompompompom
Hors ligne
Pages :: 1