Page 1 sur 2
erreur mysql
Posté : 02 nov. 2005, 17:26
par yuuzhantar
j'ai une page, pour chaque bannière, elle affiche un transfert de crédits
<?
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // 1
mysql_select_db('yuu_sw',$db); // 2
$req = mysql_query("SELECT ban_id, ban_credits FROM a_ban ");
while($data3 = mysql_fetch_assoc($req))
{
echo '<p>';
echo "<form name=\"form1\" method=\"post\" action=\"/echange/membres/ban_transfert2.php?ban_id='.$data3['ban_id'].'\">";
echo "<p>La bannière dont l'id est '.$data3['ban_id'].'dispose de '.$data3['ban_credits'].'crédits</p>";
echo "<p>Transfert de <input name="tr_type" type="text" size="3"><input name="tr_nmbre" type="text" size="10"> crédits<input type="submit" name="Submit" value="Transférer"></p> ";
echo '</form>';
echo '</p>';
}
?>
mais celà m'affiche cette erreur :
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/sdc/0/8/yuu.sw/echange/membres/ban_transfert.php on line 137
la ligne 137 est celle ci
echo "<form name=\"form1\" method=\"post\" action=\"/echange/membres/ban_transfert2.php?ban_id='.$data3['ban_id'].'\">";
qu'est ce qui ne vas pas ???
Posté : 02 nov. 2005, 17:30
par sadeq
L'erreur est au niveau des apostrophes dans :
echo "<form name=\"form1\" method=\"post\" action=\"/echange/membres/ban_transfert2.php?ban_id=
'.$data3['ban_id'].
'\">";
Le correct est de remplacer les apostrophes qui délimitent la chaine par des guillemets puisque t'as commencé comme ça:
echo "<form name=\"form1\" method=\"post\" action=\"/echange/membres/ban_transfert2.php?ban_id=".$data3['ban_id']."\">";
Posté : 02 nov. 2005, 17:32
par charabia
Sort ce que tu peux en html :
<?php
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // 1
mysql_select_db('yuu_sw',$db); // 2
$req = mysql_query("SELECT ban_id, ban_credits FROM a_ban ");
while($data3 = mysql_fetch_assoc($req))
{
?>
<p>
<form name="form1" method="post" action="/echange/membres/ban_transfert2.php?ban_id=<?php echo $data3['ban_id'];?>">
<p>La bannière dont l'id est <?php echo $data3['ban_id'];?> dispose de <?php echo $data3['ban_credits'];?> crédits</p>
<p>Transfert de <input name="tr_type" type="text" size="3"><input name="tr_nmbre" type="text" size="10"> crédits<input type="submit" name="Submit" value="Transférer"></p>
</form>
</p>
<?php
}
?>
Posté : 02 nov. 2005, 17:38
par yuuzhantar
maintenant j'ai
Parse error: parse error, unexpected '<' in /var/www/sdc/0/8/yuu.sw/echange/membres/ban_transfert.php on line 136
la ligne 136 :
<form name="form1" method="post" action="/echange/membres/ban_transfert2.php?ban_id=<?php echo $data3['ban_id'];?>">
Posté : 02 nov. 2005, 17:44
par yuuzhantar
ca doit venir du php en plein milieu
???
Posté : 02 nov. 2005, 17:44
par charabia
Mmmmhhh je ne vois qui manque dans cette ligne. As-tu vérifié les autres lignes ? Parfois ce n'est pas forcément dans la ligne indiquée que se trouve l'erreur, mais peut-être plus haut.
ca doit venir du php en plein milieu
???

Non du tout, l'erreur ne vient pas de là.
Posté : 02 nov. 2005, 17:50
par yuuzhantar
nan l'erreur est pas plus haut
car c'est un {
Posté : 02 nov. 2005, 17:52
par charabia
Là je suis désolé, mais sur cette portion de code, il n'y a aucune erreur. Mets ton code un peu plus complet, on y verra sans doute mieux.
Si tu fait un
<?php echo $data3['ban_id'];?>
à la place du <form> entier, que vois-tu ?
Posté : 02 nov. 2005, 17:57
par yuuzhantar
<?
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // connexion à la base
mysql_select_db('yuu_sw',$db); // sélection de la base
// on regarde si l'url existe déjà
$sql = "SELECT user_id, user_pseudo, user_pass, user_mail, user_credits FROM a_users WHERE user_pseudo='$pseudo2' and user_pass='$pass2'";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on compte le nombre de résultats
$data = mysql_fetch_assoc($req);
$id3 = $data['user_id'];
$pseudo3 = $data['user_pseudo'];
$pass3 = $data['user_pass'];
$mail3 = $data['user_mail'];
$credits3 = $data['user_credits'];
mysql_close(); // on ferme la connexion
?>
<?php echo "vous avez $credits3 en réserve";
?>
<p>_________________________________________________
</p>
<?
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // 1
mysql_select_db('yuu_sw',$db); // 2
$req = mysql_query("SELECT ban_id, ban_credits FROM a_ban ");
while($data3 = mysql_fetch_assoc($req))
{
<form name="form1" method="post" action="/echange/membres/ban_transfert2.php?ban_id=<?php echo $data3['ban_id'];?>">
<p>La bannière dont l id est <?php echo $data3['ban_id'];?> dispose de <?php echo $data3['ban_credits'];?> crédits</p>
<p>Transfert de <input name="tr_type" type="text" size="3"><input name="tr_nmbre" type="text" size="10"> crédits<input type="submit" name="Submit" value="Transférer"></p>
</form>
</p>
}
mysql_close();
?>
Posté : 02 nov. 2005, 17:59
par yuuzhantar
ya bien une erreur dans le coin car en bas le mysql_close(); au lieu d'être colorié, il est en noir
Posté : 02 nov. 2005, 18:04
par charabia
vous avez <?php echo $credits3;?> en réserve
<p>_________________________________________________</p>
<?
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // 1
mysql_select_db('yuu_sw',$db); // 2
$req = mysql_query("SELECT ban_id, ban_credits FROM a_ban ");
while($data3 = mysql_fetch_assoc($req))
{
?>
<form name="form1" method="post" action="/echange/membres/ban_transfert2.php?ban_id=<?php echo $data3['ban_id'];?>">
<p>La bannière dont l id est <?php echo $data3['ban_id'];?> dispose de <?php echo $data3['ban_credits'];?> crédits</p>
<p>Transfert de <input name="tr_type" type="text" size="3"><input name="tr_nmbre" type="text" size="10"> crédits<input type="submit" name="Submit" value="Transférer"></p>
</form>
</p>
<?php
}
mysql_close();
?>
En passant, pourquoi ce
mysql_close() à ce niveau ?
$id3 = $data['user_id'];
$pseudo3 = $data['user_pseudo'];
$pass3 = $data['user_pass'];
$mail3 = $data['user_mail'];
$credits3 = $data['user_credits'];
mysql_close(); // on ferme la connexion
?>
<?php echo "vous avez $credits3 en réserve";
?>
Posté : 02 nov. 2005, 18:05
par yuuzhantar
euh ...
je sais pas
Posté : 02 nov. 2005, 18:10
par charabia
euh ...
je sais pas
lol fait attention à ne pas en mettre partout. Regardes à quoi ça sert. Si tu le fermes avant tout affichage, je crois qu'il va y avoir un gros soucis. Enlèves le à ce niveau, puisque tu le met déjà à la fin du code

Posté : 02 nov. 2005, 18:23
par yuuzhantar
je vais alléger un peu le code
while($data3 = mysql_fetch_assoc($req))
{
echo "<p><a href=\"/echange/membres/ban_transfert3.php?ban_id='.$data['ban_id'].'\" class=\"menulink\">Transfert pour la bannière id='.$data['ban_id'].';</a></p>";
}
mysql_close();
?>
et sa me met
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/sdc/0/8/yuu.sw/echange/membres/ban_transfert9.php on line 120
la ligne 120 est celle avec le echo
faudrait juste que je trouve sa, je m'arrangerai pour la suite
Posté : 02 nov. 2005, 18:41
par yuuzhantar
sa vient apparement des \" mais je vois pas du tout