oui je l'ai lu mais concrétement je ne vois pas comment faire ce petit bout de code
Version imprimable
oui je l'ai lu mais concrétement je ne vois pas comment faire ce petit bout de code
Le seul conseil que je peux donner, c'est que tu prennes un papier et un crayon et que tu formalise sur papier ton probleme.Citation:
Envoyé par leloup84
Tu trace un trait et dessus tu mets les positions de tes docs et tu regarde "visuellement" ce qui se passe qd tu en deplace un ... et tu traduis en code. Et apres si tu as des problemes dans ton code, tu viens ici poser la question.
:wink:
Bon code.
Donc pour trouver la différence entre l'ancienne position et la nouvelle j'ai fais ceci. Mais il me met une erreur de guillemet, pourquoi ?Code:
1
2 $diffpos=$_POST['ancpos']-$_POST['num_ordre']; echo"$diffpos";
Voilà ce que j'ai fais pour avoir l'ancienne position. Donc je fais un echo je trouve bien le nombre de l'ancienne position.Code:
1
2
3
4
5 $query = "select num_actus, titre_actus, img_actus, txt_actus, url_actus, pos_actus from actus where titre_actus='".$_GET['id']."'"; $result=mysql_query($query); $row=mysql_fetch_row($result); $ancpos=$row[5]; echo"$row[5]";
J'envoie ces données par la méthode post.
j'ai fais un echo dans cette nouvelle page et là il ne me trouve plus l'acienne position quand je fais un echo les guillemet sont vide. Pourquoi ?
Code:echo"'".$_POST[ancpos]."'";
Voilà finalement mon problème final :Code:
1
2
3
4
5
6
7
8
9
10
11
12 $diffpos=$_POST[ancpos]-$_POST[num_ordre]; if($diffpos > 0) { $req3="update actus set pos_actus=pos_actus+1 where pos_actus <".$_POST[anc_ordre]"and pos_actus>=".$_POST[num_ordre]; $res3=mysql_query($req3); } else { $req3="update actus set pos_actus=pos_actus-1 where pos_actus >".$_POST[anc_ordre]"and pos_actus<=".$_POST[num_ordre]; $res3=mysql_query($req3); }
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING
Merci d'avance
Toujours le meme type d'erreur !
Je te conseil de faire un echo de ta requete pour voir ce qu'elle contient et de l'executer directement
Et tu verras qu'il manque encore des . de concatenation ...Code:
1
2 echo ("=>".$req3."<=");
Fais aussi attention, tu utilise les GET et POST en meme temps.. te melange pas les pinceaux ...Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 $diffpos=$_POST[ancpos]-$_POST[num_ordre]; if($diffpos > 0) { $req3="update actus set pos_actus=pos_actus+1 where pos_actus <".$_POST[anc_ordre] // <= Ici il en manque 1 ! "and pos_actus>=".$_POST[num_ordre]; $res3=mysql_query($req3); } else { $req3="update actus set pos_actus=pos_actus-1 where pos_actus >".$_POST[anc_ordre] // <= Ici il en manque un autre!!!!!!!!!!!! "and pos_actus<=".$_POST[num_ordre]; $res3=mysql_query($req3); }
J'ai mis ce que tu m'as dit il me met toujours le même message d'erreur ???
Pourquoi quand tu utilise GET ( et qui marche ) tu fais :Citation:
Envoyé par leloup84
et qd c'est POST ( Ca marche pas ! ):Code:
1
2 $_GET['id']
Il ne manquerait pas des simples guillemets ?Code:
1
2 $_POST[ancpos]
il faut tester avant de les utiliser si GET et POST existent avec isset() !
voir la doc PHP.
http://fr2.php.net/manual/fr/function.isset.php
Cà désormais çà marche c'était une erreur de ma part. Là il ne me reste plus que ce message d'erreur à trouver pour les modification de position se fasse. Le GET c'été pour la page précédente dans la page de modification j'utilise POST