Fatal error suite à une requète UPDATE

Eléphanteau du PHP | 34 Messages

23 août 2010, 03:28

le problème de sessions c'est que sous free :wink:
fais gaffe sous free par défaut c'est php 4, pour activé php 5 il faut mettre un fichier .htaccess avec : php 1
Un fichier .htaccess avec à l'intérieur juste marqué "php 1" ? Placé à la racine ?

ViPHP
ViPHP | 5462 Messages

23 août 2010, 03:35

le problème de sessions c'est que sous free :wink:
fais gaffe sous free par défaut c'est php 4, pour activé php 5 il faut mettre un fichier .htaccess avec : php 1
Un fichier .htaccess avec à l'intérieur juste marqué "php 1" ? Placé à la racine ?
oui :wink:

http://wiki.free.fr/wiki/index.php/Php5

Eléphanteau du PHP | 34 Messages

23 août 2010, 03:37

Okay

Je suis en train de faire quelques tests sur la requête UPDATE :roll:
Modifié en dernier par Hirokumi le 23 août 2010, 04:39, modifié 1 fois.

Eléphanteau du PHP | 34 Messages

23 août 2010, 04:04


Voici MAJ.php
db_connect();
$avatar_peau_edit = $_POST['avatar_peau_maj'];
echo "Couleur de peau : $avatar_peau_edit - ID : $id<br/>";
$maj_peau = "UPDATE characters SET avatar_peau = '$avatar_peau_edit' WHERE id=$id";
echo "$maj_peau";
mysql_query($maj_peau) or exit('<pre>' . $sql . PHP_EOL . mysql_error() . '</pre>');
Voici ce qu'elle me renvoie
Couleur de peau : Marron.png - ID : 1
UPDATE characters SET avatar_peau = 'Marron.png' WHERE id=1
Mais aucune donnée n'est enregistrée dans la base de donnée
Image

Incompréhensible.. 8-|

Edit : Je trouve pas.. j'vais dormir, je réfléchirais mieux à tête reposé. :lol:

ViPHP
AB
ViPHP | 5818 Messages

23 août 2010, 11:10

Bizarre que ça ne te renvoie aucune erreur étant donné que tu écris
$maj_peau = "UPDATE characters SET avatar_peau = '$avatar_peau_edit' WHERE id=$id";
echo "$maj_peau";
mysql_query($maj_peau) or exit('<pre>' . $sql . PHP_EOL . mysql_error() . '</pre>');
donc apparemment ta variable $sql n'existe pas...

Fait plutôt
$resultat = mysql_query($maj_peau) or exit(mysql_error());
Etant donné qu'un update retourne le nombre d'enregistrements ayant été mis à jour tu pourras en plus faire des tests sur $resultat

Eléphanteau du PHP | 34 Messages

23 août 2010, 11:55

Salut,

Déjà merci beaucoup pour toutes vos réponses, c'est le premier forum où j'ai autant de réponses et elles sont rapides par dessus le marché :roll: .
Donc AB, j'ai fais une erreur d'étourderie en recopiant la ligne "stealth35", je voulais remplacer le nom de la variable $sql mais surement avec l'heure d'ailleurs, je n'ai pas vu qu'elle se répétait deux fois.

Donc j'ai modifié :
db_connect();
$avatar_peau_edit = $_POST['avatar_peau_maj'];
echo "Couleur de peau : $avatar_peau_edit - ID : $id";
$maj_peau = "UPDATE characters SET avatar_peau = '$avatar_peau_edit' WHERE id=$id";
echo "<br/>$maj_peau";
$resultat = mysql_query($maj_peau) or exit(mysql_error());
echo "<br/>$resultat";
J'obtiens ceci :
Couleur de peau : Pale.png - ID : 1
UPDATE characters SET avatar_peau = 'Pale.png' WHERE id=1
1
Pourquoi me renvoie-t-il "1" ? Je ne vois vraiment pas.. :shock:

ViPHP
xTG
ViPHP | 7331 Messages

23 août 2010, 12:00

Etant donné qu'un update retourne le nombre d'enregistrements ayant été mis à jour
^_-

Eléphanteau du PHP | 34 Messages

23 août 2010, 12:13

Rhhaaa oui ! Et le pire c'est que je l'ai déjà vu et appris >_<
Donc le blanc de la case avatar_peau qui est censé être mise à jour et qui ne prend aucune valeur Image viens de la forme que j'ai donné ?
"UPDATE characters SET avatar_peau = '$avatar_peau_edit' WHERE id=$id"

ViPHP
xTG
ViPHP | 7331 Messages

23 août 2010, 12:52

A la vue de tes affichages je dirai que tu dois avoir une autre requête après, ou bien tu recharges la page sans les valeurs du formulaire.
Car à première vue ta requête est bonne.

Eléphanteau du PHP | 34 Messages

23 août 2010, 13:45

Je ne recharge pas ma page, et il n'y a pas d'autres requêtes :S
Après mes tests je les met en commentaire entre /* et */ pour les garder à portée de main, je ne pense pas qu'il sont pris en compte :|

ViPHP
ViPHP | 5462 Messages

23 août 2010, 16:49

Je ne recharge pas ma page, et il n'y a pas d'autres requêtes :S
Après mes tests je les met en commentaire entre /* et */ pour les garder à portée de main, je ne pense pas qu'il sont pris en compte :|
tu fais bien le error_reporting(-1); au debut tes pages ?

Eléphanteau du PHP | 34 Messages

23 août 2010, 17:01

tu fais bien le error_reporting(-1); au debut tes pages ?
Rebonjour Stealth35,
Oui, je l'ai bien mis mais je suis pas sur de l'avoir correctement fait :
error_reporting(-1);
include("../fonctions/config.php");
db_connect();
$avatar_peau_edit = $_POST['avatar_peau_maj'];
echo "Couleur de peau : $avatar_peau_edit - ID : $id";
$maj_peau = "UPDATE characters SET avatar_peau = '$avatar_peau_edit' WHERE id=$id";
echo "<br/>$maj_peau";
$resultat = mysql_query($maj_peau) or exit(mysql_error());
echo "<br/>$resultat";
Est-ce bien comme ça ?


J'obtiens toujours :
Couleur de peau : Marron.png - ID : 1
UPDATE characters SET avatar_peau = 'Marron.png' WHERE id=1
1

ViPHP
ViPHP | 5462 Messages

23 août 2010, 17:22

ba c'est bon ca, qu'est qu'il te pose soucis ?

Eléphanteau du PHP | 34 Messages

23 août 2010, 17:23

La variable avatar_peau de ma base de données reste vide... =(

Image
Modifié en dernier par Hirokumi le 23 août 2010, 17:26, modifié 1 fois.

ViPHP
ViPHP | 5462 Messages

23 août 2010, 17:25

La variable avatar_peau de ma base de données reste vide... =(
ah oki,
de quel type est ton champs avatar_peau ?