Transmettre une variable de session?

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


tryan
WRInaute accro
WRInaute accro
 
Messages: 1536
Inscription: Dim Fév 20, 2005 14:14

Message le Lun Fév 11, 2008 13:09

e-kiwi: tu dis que dans $description il y a une apostrophe et que sa plante .. Je ne comprend pas ou tu vois cette apostrophe .. peut tu me préciser un peut plus stp ?

Sinon, j'ai modifié la transmission de variable $_GET en $_POST , ajouté la fonction stripslashes() et remplacé $sql= par mysql_query.
Code: Tout sélectionner
<?php
//si la variable $_POST["iad"] existe alors ..
if (isset($_POST["iad"])){

//je teste si elle existe en l'affichant
echo $_POST["iad"];
echo "<br/>";


//Je me connecte   
mysql_connect("**","**","**");
mysql_select_db("localhost");

//je teste tout mes variables pour voir si elles s'affichent
$titre = stripslashes($_POST["taitre"]);
echo "je teste variable titre :$titre<br/>";
$description = stripslashes($_POST["daescription"]);
echo "je teste variable description :$description</br>";
$url = stripslashes($_POST["uarl"]);
echo "je teste variable url :$url<br/>";
$id = stripslashes($_POST["iad"]);
echo "je teste variable id :$id<br/>";

mysql_query("UPDATE `nom_de_ma_base`.`RSS` SET `titre` = '$titre',`description` = '$description',`url` = '$url' WHERE

`RSS`.`id` =$id LIMIT 1 ;

");

mysql_close();
}
?>


La, sa fonctionne :D .
UsagiYojimbo: J'ai essayé la fonction mysql_real_escape_string mais visiblement je n'ai pas dut l'insérer correctement et sa ne fonctionnait plus.


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 5219
Inscription: Mer Nov 23, 2005 10:38

Message le Lun Fév 11, 2008 13:22

Code: Tout sélectionner
if (isset($_POST


Ca je t'enjoins à le faire sur toutes les variables que tu récupères via ton formulaire.


e-kiwi
Modérateur
Modérateur
 
Messages: 13870
Inscription: Mar Déc 23, 2003 9:04

Message le Lun Fév 11, 2008 13:40

$description = stripslashes($_POST["description"]);

un apostrophe dans le texte saisi dans le champ "description". surout qu'en plus tu fais un stripslashes (??) avant insertion


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3062
Inscription: Jeu Sep 14, 2006 4:53

Message le Lun Fév 11, 2008 14:30

Oue bizarre qd meme , mais bon ^^


tryan
WRInaute accro
WRInaute accro
 
Messages: 1536
Inscription: Dim Fév 20, 2005 14:14

Message le Lun Fév 11, 2008 16:08

UsagiYojimbo a écrit:
Code: Tout sélectionner
if (isset($_POST


Ca je t'enjoins à le faire sur toutes les variables que tu récupères via ton formulaire.

C'est noté :D .
e-kiwi: Je ne suis pas une "flèche" dans le domaine alors j'essaye pour comprendre :) . Si j'ai mis la fonction stripslashes() c'est parce que j'ai crus comprendre qu'elle servait à supprimer les slash qui venait s'insérer dans un mot contenant une apostrophe .. je me suis planté ?

Sinon, peut on utiliser une variable de session dans une boucle contenant plusieurs enregistrement ?
Je m'explique:
Quand j'affiche mes variables, celle ci affiche entre autre un lien de la forme <a href="modifier-flux-rss1.php" >Modifier/supprimer</a>. Mon soucis est que lorsque que je clique sur ce lien, se sont toutes les infos contenue dans la boucle qui s'affiche au lieu des infos pour un "Id" précis.
Exemple:
Code: Tout sélectionner
.....

$query1 = mysql_query("SELECT id, titre, description, url FROM  NEWSRSS ORDER BY id DESC ");

$_SESSION['idrss'] ="";
$_SESSION['titrerss'] ="";
$_SESSION['descriptionrss'] = "";
$_SESSION['urlrss'] = "";

while($affiche1 = mysql_fetch_array($query1))
{
$id = $affiche1['id'];

$idrss.="$id";

$titre = $affiche1['titre'];

$titrerss.="$titre ";

$description = $affiche1['description'];

$descriptionrss.= "$description";

$url = $affiche1['url'];

$urlrss.="$url";

      echo '<b>Url:</b>  '.$url.' <br />';
      echo '<b>Id:</b>  '.$id.' <br />';
      echo '<b>Titre:</b>  '.$titre.'<br />';
      echo '<b>Description:</b>  '.$description.'<br />';
      echo '<b>Modif:</b><a href="modifier-flux-rss1.php" >Modifier/supprimer</a>';

}
...

Si j'ai plusieurs enregistrement dans ma boucle et que je souhaite avoir seulement l'info sur un seul, comment dois je procéder avec les sessions pour y parvenir car à l'heure actuelle c'est toutes les infos de tout les enregistrement qui s'affichent quand je clique sur mon lien.


e-kiwi
Modérateur
Modérateur
 
Messages: 13870
Inscription: Mar Déc 23, 2003 9:04

Message le Lun Fév 11, 2008 16:17

tryan, en fait, lorsque tu insere une valeur en base de données, que tu fais par exemple :
insert values('$description')
si $description vaut "sal'ut" tu te retrouve avec :
insert values('sal'ut')
ce qui ne marchera pas, vu que tu as 3 apostrophes. on utilise donc addslashes pour pouvoir inserer l apostrophe en base de données. et lorsque tu recupere ta variable de la base de données, qui vaut "sal\'ut", tu applique stripslashes() pour rtrouver sal'ut et l'afficher. c'est donc le raisonnment inverse qu'il faut appliquer


tryan
WRInaute accro
WRInaute accro
 
Messages: 1536
Inscription: Dim Fév 20, 2005 14:14

Message le Lun Fév 11, 2008 18:25

Ok, merci e-kiwi pour cette explication :D . Si je resume, on applique un addslashes() à la variable avant insertion en BD et un stripslashes() à la sortie. Donc ma variable $description=$_POST["description"]; devient $description=addslashes($_POST["description"]); avant insertion puis stripslashes($_POST['description']); en sortie .
Pour mon soucis 2, vous avez une piste que je pourrais suivre afin d'avancer un peut ?
Merci


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3062
Inscription: Jeu Sep 14, 2006 4:53

Message le Lun Fév 11, 2008 19:51

Ca depend comment est configuré son serveur aussi. Les addslashes peuvent être automatiques sur les GET et POST. Et c'est peut-être le cas ici non ?


tryan
WRInaute accro
WRInaute accro
 
Messages: 1536
Inscription: Dim Fév 20, 2005 14:14

Message le Lun Fév 11, 2008 21:01

YoyoS a écrit:Ca depend comment est configuré son serveur aussi. Les addslashes peuvent être automatiques sur les GET et POST. Et c'est peut-être le cas ici non ?


Perso je n'en sais rien moi même ! Actuellement je teste sous FREE.
Je reviens sur mon soucis 2, à savoir si on peut utiliser les variables de session dans une boucle (Voir code plus haut http://www.webrankinfo.com/forums/topic ... htm#851677 ).

Transmettre une variable de session?

Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités