Gestion des cookies avec PHP

Fermé
Swan - 19 janv. 2016 à 23:35
jordane45 Messages postés 38314 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 novembre 2024 - 20 janv. 2016 à 10:06
Bonjour,

je travaille sur la gestion des preferences des utilisateurs de mon site, donc je sauvgarde des cookies lors le remplissage d'un formulaire comme suit
if (isset($_POST['chambre']) && isset($_POST['option_chambre'])  )
{
setcookie('preference',$_POST['option_chambre'],time()+3600*24*31,"http://127.0.0.1/partie_3_f/accueil.php",null, false, true);
setcookie('type',$_POST['chambre'],time()+3600*24*31,"http://127.0.0.1/partie_3_f/accueil.php",null, false, true);
}


ensuite je cherche à effectuer des recherche suivant ces cookies sauvgardées
dans une autre page comme suit
<?php 
{
$con = mysqli_connect('localhost','root','root','pdxhotel');
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$type=$_COOKIE['type'];
$pre = $_COOKIE['preference'];
$soal = $con->query("select * from chambre where vide = 1 and type_chambre='".$type."' and preference = '".$pre."'");
if (mysqli_num_rows($soal)==0)
{
echo "pas de chambre disponible";
}
else
{
?>
<div id="titres" align="center">
<label >----------------------------</label>
<h2 id="tit"> Resultat de recherche </h2>
<label >----------------------------</label>
</div>
<?php
for ($i = 0; $i<mysqli_num_rows($soal); $i++)
{
?>
<div id="offre1" class="offre">
<img src="Images/chambre3.jpg" width="100%" height="50%" />
<p > <?php echo "Chambre de type",$_COOKIE['type'],"and qui vérifie la condition:",$_COOKIE['preference']?> </p>
</div>
<?php
}

}
}
?>


Est ce que vous pouvez m'aider pour régler le problem : Notice: Array to string conversion !!

Merci
A voir également:

1 réponse

jordane45 Messages postés 38314 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 novembre 2024 4 705
20 janv. 2016 à 10:06
Bonjour,

1 - Il est préférable de récupérer "proprement" les variables de type tableau ( $_POST, $_GET, $_COOKIE, $_SESSION ..... ) AVANT de les utiliser.
Pour ce faire, tu peux utiliser l'écriture ternaire avec un ISSET ( ou un !empty ) .
Par exemple :
$type=isset($_COOKIE['type']) ? $_COOKIE['type'] : NULL;

//comprendre :
//$variable = (condition) ? valeur_si_vrai : valeur_si_faux ;



2 - Il nous faudrait le message d'erreur COMPLET (avec le numéro de ligne.


3 - Si tu peux, merci d'indiquer le LANGAGE dans les Balises de code lorsque tu postes sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.
0