2013-03-29 4 views
4

Quelqu'un peut-il m'aider avec cette erreur que je reçois, je ne peux pas trouver le problème. Je sais que mon code est de la merde, et que je devrais utiliser PDO. J'essaie de faire un script de commerce pour mon jeu, c'est la page où l'utilisateur va accepter ou refuser le commerce, je n'ai pas essayé d'ajouter la fonction de déclin pour le moment. en ce moment je reçois cette erreur.Colonne inconnue, erreur

Unknown column 'pseudo' dans 'liste des champs'

<?php 


    if ($_POST['A'] == '1') { 
$token= mysql_real_escape_string($_POST['token']); 
$tokenn = strip_tags($token); 


$sql234 = "SELECT * FROM trade WHERE trade_to='".$_SESSION['username']."'"; 
$result2 = mysql_query("SELECT * FROM trade WHERE trade_to='".$_SESSION['username']."'"); 
while($row2 = mysql_fetch_array($result2)){ 


$sql23 = "SELECT * FROM users WHERE username='".$_SESSION['username']."')"; 
$result = mysql_query("SELECT * FROM users WHERE username='".$_SESSION['username']."'"); 
while($row = mysql_fetch_array($result)){ 

if (isset($_POST['slot1'])) { 

     echo "<p>You have accepted the trade.</p>" ; 
     mysql_query("UPDATE user_pokemon SET belongsto=".$row2['trade_to']." WHERE id='".$row2['trade_pokeid']."'") 
      or die(mysql_error()); 

     mysql_query("UPDATE user_pokemon SET belongsto=".$row2['trade_from']." WHERE id='".$row2['trade_mypokeid']."'") 
      or die(mysql_error()); 

      mysql_query("DELETE FROM trade WHERE trade_id=".$row2['trade_id']."") 
      or die(mysql_error()); 


    } else { 

} 
} 
} 


} 

?> 

<?php 
$result = mysql_query("SELECT * FROM trade WHERE trade_to='".$_SESSION['username']."'"); 
while($row = mysql_fetch_array($result)) 
{ 

$idd= mysql_real_escape_string($row['trade_id']); 
$iddd = strip_tags($idd); 

?> 
</span> 
<form name="slot1" action="" method="post"> 
    <div align="center"> 
    <p> 
     <span> 
     <select name="A" id="" > 
      <option value="1">Buy</option> 
     </select> 
     <input type="hidden" name="token" id="token" value="<?php echo $iddd ; ?>" /> 
     <br /> 
     <input type="submit" class="submit" value="Accept" name="slot1"> 
     </span></p> 


    </div> 
</form> 
<span> 
<?php 
echo $row ['trade_id']; 
} 
?> 

</span> 

</p> 
</div> 
</center> 


</td> 

<?php include 'includes/bottom.php'; ?> 

Tout hellp serait très apprécié :)

+0

Exactement ce qu'il dit: Vous essayez d'accéder à une colonne appelée « pseudo » qui n'existe pas . –

+0

Je sais, mais je ne vois pas où est le problème. – Sakai

+0

Eh bien apparemment didierc a des yeux plus tranchants que moi. +1 pour travailler sur un projet Pokémon: p –

Répondre

4

Dans cette ligne:

mysql_query("UPDATE user_pokemon SET belongsto=".$row2['trade_from']." WHERE id='".$row2['trade_mypokeid']."'") 
vous

oublié de citer le premier paramètre:

mysql_query("UPDATE user_pokemon SET belongsto='".$row2['trade_from']."' WHERE id='".$row2['trade_mypokeid']."'") 

La même erreur se produit dans les deux prochaines instructions mysql_query dans le code.

Tu le sais, mais je vais le dire quand même: s'il vous plaît utilisation PDO ou mysqli. Au moins, désinfectez toutes vos données en utilisant mysql_real_escape_string, comme vous l'avez fait au début de votre code.

mysql_query("UPDATE user_pokemon SET belongsto='".mysql_real_escape_string($row2['trade_from'])."' WHERE id='".mysql_real_escape_string($row2['trade_mypokeid'])."'") 

Je dis pas cela parce que cela vous aidera à long terme, c'est tout

+0

+1 bien repéré. –

+0

Merci beaucoup, je n'ai pas remarqué! – Sakai

+0

vous êtes les bienvenus. – didierc

Questions connexes