Problème d'echo D:

Eléphant du PHP | 343 Messages

29 juil. 2011, 03:03

N'abusons rien :lol:
Surtout pour une page comme celle-ci ;)
Développeur web

mecquiabesoindaide
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 03:54

Un site comme celui là.... pfff ils sont très bien mes sites. cette page est une page externe sur la quel le joueur sera envoyé s'il clique sur un lien.

en tout cas, pour l'instant, mes erreurs sont due a des oublis... rien de très ... en tout cas, là mon message vert s'affiche une fois qu'on soit sur la page et le 'pt' ne se rajoute pas dnas le field '_Flags'

mecquiabesoindaide
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 04:33

Ok tout est fixé. Mise a part un truc. Le PT ne se rajoute pas au field '_flags'
<html><form action="#" method="post">
 Votre SteamID <input type="text" name="SteamID"> 
 <input type="submit" value="Soumettre" name="ok">
 </form></html>
  <?php
 $steamid = $_POST['SteamID'];

   if (isset($_POST["ok"])) {echo  "<font color='white'><p style='background-color:green;'>Le PhysGun et le ToolGun ont été rajouté à tout vos perso.</p></font><br />";
   
    $result = mysql_query("SELECT _Flags FROM characters WHERE _SteamID='$steamid'")
 or die('erreur 1');
 
$sql = mysql_query("UPDATE characters SET _Flags='($result)pt' WHERE _SteamID='$steamid'")
   or die('erreur 2');
   
   }
else{ echo "<font color='white'><p style='background-color:darkred;'>Vérifiez qu'il n'y est pas d'espaces. Vérifiez que votre SteamID a bien été retapé.</p></font><br />";}
 ?>
aucune des 'erreur 1 ou 2' ne s'afiche

Eléphant du PHP | 343 Messages

29 juil. 2011, 04:35

Déjà j'ai dit "pour une page". Tu vas me dire que ta page mérite 1 architecture MVC peut-être?
Par contre pour des "oublis", ça fait beaucoup.
des echo =
des ; après les } des if/else
des traitements php à l'intérieur des formulaires à traiter
des req sql avec des variables à la place de champ de la bdd

Ça commence à faire beaucoup non?

EDIT: T'as testé un $result."pt"; ?
Développeur web

mecquiabesoindaide
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 04:53

Je viens de tester a l'instant.
Parse error: syntax error, unexpected T_STRING in /home/a2796245/public_html/Physgun-paypal.php on line 29
Ligne 29 = :
mysql_query("UPDATE characters SET _Flags='$result."pt"' WHERE _SteamID='$steamid'")

mecquiabesoindaide
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 04:55

j'ai essayé avec et sans le point virgule. ( ; ) Même erreur

Eléphant du PHP | 343 Messages

29 juil. 2011, 04:58

C'est sur, il faut échapper les 2 " autour de pt sinon tu casses ta req.
Développeur web

mecblahblahblah
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 05:03

mysql_query("UPDATE characters SET _Flags='$result.pt;' WHERE _SteamID='$steamid'")
Ok tout marche comme avant, et le PT ne se rajoute toujours pas.

Eléphant du PHP | 343 Messages

29 juil. 2011, 05:11

Comme ça:
"UPDATE characters SET _Flags='$result.\"pt\"' WHERE _SteamID='$steamid'"
Développeur web

mecquiparle
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 05:17

Ahh sa veut dire ça échappé ? Je viens de tester et sa enfin changer le _Flags ! :D

Mais pas comme il le faut :?

Sa a tout remplacé dans _Flags par : Resource id #8."pt";

Donc la je suis sure que c'est le $result le problème, j'ai sans doute mal structuré le tout. Mais je vois pas comment je pourrais faire autrement :?

Eléphant du PHP | 343 Messages

29 juil. 2011, 05:25

Oui c'est ça échapper.
Normal tu ne fais pas de mysql_fetch_assoc après ta req.
Développeur web

mecquiparle
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 05:34

  <?php
 $steamid = $_POST['SteamID'];

   if (isset($_POST["ok"])) {
   echo  "<font color='white'><p style='background-color:green;'>Le PhysGun et le ToolGun ont été rajouté à tout vos perso.</p></font><br />";
   
    $result = mysql_query("SELECT _Flags FROM characters WHERE _SteamID='$steamid'")
 or die('erreur 1');
 
 $row = mysql_fetch_assoc($result)
 
	mysql_query("UPDATE characters SET _Flags='$row.\"pt\";' WHERE _SteamID='$steamid'")
 or die('erreur 2');
   
   mysql_close($connect);}
else{ echo "<font color='white'><p style='background-color:darkred;'>Vérifiez qu'il n'y est pas d'espaces. Vérifiez que votre SteamID a bien été retapé.</p></font><br />";
mysql_close($connect);}
 ?>
et j'obtien :
Parse error: syntax error, unexpected T_STRING in /home/.../public_html/Physgun-paypal.php on line 31

Eléphant du PHP | 343 Messages

29 juil. 2011, 05:40

Va falloir que tu revois la doc... t'associes pas de tableau à ton $row. Je suppose que t'es allé là: http://php.net/manual/fr/function.mysql-fetch-assoc.php faudrait peut-être lire en entier.

Bon moi j'y vais, avec ça c'est terminé.
Si ca merde toujours avec ta requête joue avec les ' ", ça devrait marcher.
Développeur web

mecquichose
Invité n'ayant pas de compte PHPfrance

29 juil. 2011, 05:46

c'est justement le site sur le quel j'étais ;)

donc voila se que j'ai marqué. Avec se que tu mas dit et se qui est sur le site sa me donne cela:
mysql_query("UPDATE characters SET _Flags = '$row[\"_Flags\"];\"pt\";' WHERE _SteamID = '$steamid'")
mais sa dit un erreur : Parse error: syntax error, unexpected T_STRING

Eléphant du PHP | 343 Messages

29 juil. 2011, 15:39

Pourquoi il y a 2 ; en plein milieu de ta req et pas à la fin plutôt?
Développeur web