{MySQL} prob UPDATE SET
Résolu
netanonima
Messages postés
37
Statut
Membre
-
netanonima Messages postés 37 Statut Membre -
netanonima Messages postés 37 Statut Membre -
Bonjour,
je souhaite créer une page grâce à laquelle je puisse mettre à jour un tableau (base mysql).
Etant novice, je ne sais pas comment m'y prendre et pour le moment en suis à ce résultat :
Message après post :
Fatal error: Call to a member function update() on a non-object in /mnt/sites/altordj.com/web/pokatest/rien.php on line 28
script :
La ligne 28:
Donc si quelqu'un trouve mon erreur, ou peut m'expliquer comment faire plus simple, ce serait vraiment super sympa.
D'avance merci.
je souhaite créer une page grâce à laquelle je puisse mettre à jour un tableau (base mysql).
Etant novice, je ne sais pas comment m'y prendre et pour le moment en suis à ce résultat :
Message après post :
Fatal error: Call to a member function update() on a non-object in /mnt/sites/altordj.com/web/pokatest/rien.php on line 28
script :
<table align=center aligncellpadding=0 border=1 cellspacing=0>
<tr>
<td width="40" align=center><B>Rang</B></td>
<td width="75" align=left><B>Joueur</B></td>
<td width="40" align=right><B>Jan.</B></td>
<td width="40" align=right><B>Fév.</B></td>
<td width="40" align=right><B>Mars</B></td>
<td width="40" align=right><B>Avr.</B></td>
<td width="40" align=right><B>Mai</B></td>
<td width="40" align=right><B>Juin</B></td>
<td width="40" align=right><B>Juil.</B></td>
<td width="40" align=right><B>Août</B></td>
<td width="40" align=right><B>Sept.</B></td>
<td width="40" align=right><B>Oct.</B></td>
<td width="40" align=right><B>Nov.</B></td>
<td width="40" align=right><B>Déc.</B></td>
<td width="60" align=right><B>Total</B></td>
</tr>
<?php
include("config.php");
mysql_connect("$dbhost", "$dblogin", "$dbpassword");
mysql_select_db("$dbname");
$action=$_POST["action"];
La ligne 28:
if($action=="update"){ $dbname->update("$dbtable3 SET Joueur='joueur',Janvier='janvier',Fevrier='fevrier',Mars='mars',Avril='avril',Mai='mai',Juin='juin',Juillet='juillet',Aout='aout',Septembre='septembre',Octobre='octobre',Novembre='novembre',Decembre='decembre'");
echo"<A HREF='Javascript:history.go(-1)'>Retour</A>";
exit;
}
echo"<form name='pok_res' method='post' action='rien.php'>";
$reponses = mysql_query("SELECT Joueur,Janvier,Fevrier,Mars,Avril,Mai,Juin,Juillet,Aout,Septembre,Octobre,Novembre,Decembre,(Janvier+Fevrier+Mars+Avril+Mai+Juin+Juillet+Aout+Septembre+Octobre+Novembre+Decembre) as total FROM $dbtable3 ORDER BY total DESC");
$numligne="1";
while ($donnees = mysql_fetch_array($reponses))
{
echo
'<tr>
<td width="40" align=center><B>' .$numligne. '</BR></td>
<td width="75" align=left><input type=text name=joueur size=20 value='.$donnees['Joueur'].'></td>
<td width="40" align=right><input type=text name=janvier size=5 value=' .$donnees['Janvier']. '></td>
<td width="40" align=right><input type=text name=fevrier size=5 value=' .$donnees['Fevrier']. '></td>
<td width="40" align=right><input type=text name=mars size=5 value=' .$donnees['Mars']. '></td>
<td width="40" align=right><input type=text name=avril size=5 value=' .$donnees['Avril']. '></td>
<td width="40" align=right><input type=text name=mai size=5 value=' .$donnees['Mai']. '></td>
<td width="40" align=right><input type=text name=juin size=5 value=' .$donnees['Juin']. '></td>
<td width="40" align=right><input type=text name=juillet size=5 value=' .$donnees['Juillet']. '></td>
<td width="40" align=right><input type=text name=aout size=5 value=' .$donnees['Aout']. '></td>
<td width="40" align=right><input type=text name=septembre size=5 value=' .$donnees['Septembre']. '></td>
<td width="40" align=right><input type=text name=octobre size=5 value=' .$donnees['Octobre']. '></td>
<td width="40" align=right><input type=text name=novembre size=5 value=' .$donnees['Novembre']. '></td>
<td width="40" align=right><input type=text name=decembre size=5 value=' .$donnees['Decembre']. '></td>
<td width="40" align=right><B>' .$donnees['total']. '</B></td>
</tr><P> ';
$numligne++ ;
}
mysql_close();
?>
</table>
<input type='hidden' name='action' value='update'>
<input type='submit' value='Envoyer'>
</form>
Donc si quelqu'un trouve mon erreur, ou peut m'expliquer comment faire plus simple, ce serait vraiment super sympa.
D'avance merci.
Configuration: Windows XP Safari 530.5
4 réponses
-
Hello,
ça m'a l'air bien compliqué d'utiliser un tableau pour faire un update. Qu'importe la structure de ton projet la syntaxe est pas bonne.
UPDATE table SET champ1Amodfier = 'valeurAffectation', champ2Amodfier = 'valeurAffectation' WHERE id = 'clé' ...
'valeurAffectation' est une variable dynamique de php le plus souvent,
Normail qu'il comprenne pas "update(" <-- ce n'est pas la syntaxe.
Là il comprend qu'il faut appeler une fonction qui s'appelle update. Ce qui ne risque pâs parce que update est un mot réservé au php -
Wowww... heu moi pas parler langue à vous...
Si t'arrives à me montrer un exemple simple de formulaire pour mettre à jour une table je pourrai l'adapter je suppose... mais c'est tellement basique que j'en trouve pas :-(
(*dsl dla réaction (lol))
Je te remercie d'avoir daigné répondre à mon message! ! -
Relis bien mon message précédent je t'ai déjà expliqué pk l'erreur est remontée.
Le problème est d'ordre syntaxique.
En SQL un update c'est pas comme ça --> update("$dbtable3 SET
A toi de jouer -
Un ami m'a développé ça je vous donne les scripts (en espérant que ça puisse aider qqun)
sbpoker.php:<head> <style type="text/css"> .style1 { text-align: center; } </style> </head> <?php include("config.php"); mysql_connect("$dbhost", "$dblogin", "$dbpassword"); mysql_select_db("$dbname"); $query = 'SELECT * FROM '.$dbtable3; $result = mysql_query($query); ?> <form action="sbupdate.php" method="post"> <table align=center aligncellpadding=0 border=1 cellspacing=0> <tr> <td width="75" align=left><B>Joueur</B></td> <td width="40" align=right><B>Jan.</B></td> <td width="40" align=right><B>Fév.</B></td> <td width="40" align=right><B>Mars</B></td> <td width="40" align=right><B>Avr.</B></td> <td width="40" align=right><B>Mai</B></td> <td width="40" align=right><B>Juin</B></td> <td width="40" align=right><B>Juil.</B></td> <td width="40" align=right><B>Août</B></td> <td width="40" align=right><B>Sept.</B></td> <td width="40" align=right><B>Oct.</B></td> <td width="40" align=right><B>Nov.</B></td> <td width="40" align=right><B>Déc.</B></td> <?php //Supprimer la ligne ci-dessous pour enlever l'option de suppression ?> <td width="40" align=right><B>Suppr.</B></td> </tr> <?php $i=0; $n=0; while ($val = mysql_fetch_array($result)) { // ------------------------------------------ // DONNEES A AFFICHER dans les cellules echo '<input type="hidden" name="ID['.$i.']" value="'.$val['id'].'">'; echo '<tr>'; echo '<td width="75" align=left><input type=text name=Joueur['.$i.'] size=6 value="'.$val['joueur'].'"></td>'; echo '<td width="40" align=right><input type=text name=Janvier['.$i.'] size=1 value="'.$val['janvier'].'"></td>'; echo '<td width="40" align=right><input type=text name=Fevrier['.$i.'] size=1 value="'.$val['fevrier'].'"></td>'; echo '<td width="40" align=right><input type=text name=Mars['.$i.'] size=1 value="'.$val['mars'].'"></td>'; echo '<td width="40" align=right><input type=text name=Avril['.$i.'] size=1 value="'.$val['avril'].'"></td>'; echo '<td width="40" align=right><input type=text name=Mai['.$i.'] size=1 value="'.$val['mai'].'"></td>'; echo '<td width="40" align=right><input type=text name=Juin['.$i.'] size=1 value="'.$val['juin'].'"></td>'; echo '<td width="40" align=right><input type=text name=Juillet['.$i.'] size=1 value="'.$val['juillet'].'"></td>'; echo '<td width="40" align=right><input type=text name=Aout['.$i.'] size=1 value="'.$val['aout'].'"></td>'; echo '<td width="40" align=right><input type=text name=Septembre['.$i.'] size=1 value="'.$val['septembre'].'"></td>'; echo '<td width="40" align=right><input type=text name=Octobre['.$i.'] size=1 value="'.$val['octobre'].'"></td>'; echo '<td width="40" align=right><input type=text name=Novembre['.$i.'] size=1 value="'.$val['novembre'].'"></td>'; echo '<td width="40" align=right><input type=text name=Decembre['.$i.'] size=1 value="'.$val['decembre'].'"></td>'; //Supprimer la ligne ci-dessous pour enlever l'option de suppression echo '<td width="40" align=center><input type=checkbox name=Chk['.$i.']></td>'; echo '</tr>'; $n = $i; $i++; // ------------------------------------------ } ?> </table> <?php mysql_close(); ?> <input type="hidden" name="n" value="<?php echo $n; ?>"> <br> <div class="style1"> <input type="submit" name="envoie" value="Modifier"> </div> </form>
sbupdate.php:<?php include("config.php"); mysql_connect("$dbhost", "$dblogin", "$dbpassword"); mysql_select_db("$dbname"); $i=0; while ($i <= $_POST['n']) { //Supprimer tout le contenu du IF et le IF, et supprimer QUE le ELSE (pas le contenu!) pour enlever la fonctione de suppression if ($_POST['Chk'][$i]) { $sql = "DELETE FROM ".$dbtable3." WHERE id='".$_POST['ID'][$i]."'"; echo "Joueur: ".$_POST['Joueur'][$i]." supprimé<br>"; } else { $sql = "UPDATE ".$dbtable3." SET joueur='".$_POST['Joueur'][$i]."', janvier='".$_POST['Janvier'][$i]."', fevrier='".$_POST['Fevrier'][$i]."', mars='".$_POST['Mars'][$i]."',"; $sql.= "avril='".$_POST['Avril'][$i]."', mai='".$_POST['Mai'][$i]."', juin='".$_POST['Juin'][$i]."', juillet='".$_POST['Juillet'][$i]."', aout='".$_POST['Aout'][$i]."',"; $sql.= "septembre='".$_POST['Septembre'][$i]."', octobre='".$_POST['Octobre'][$i]."', novembre='".$_POST['Novembre'][$i]."', decembre='".$_POST['Decembre'][$i]."' WHERE id='".$_POST['ID'][$i]."'"; } //echo $sql."<br>"; mysql_query($sql); $i++; } mysql_close(); echo "OK !"; ?> <br><br> <a href="#" onclick="history.back();">Retour</a>