JeuWeb - Crée ton jeu par navigateur
[regler]serialize - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [regler]serialize (/showthread.php?tid=1903)



[regler]serialize - jo_link_noir - 19-10-2007

bonjour,
alors voilà, j'ai un problème avec la fonction serialize sur mon script d'alliance...

quand on créé un groupe via le formulaire, je fait un array, avec en clé le nom du groupe et les droits d'administration en valeur (aussi sous la forme d'array)
Citation :array("guerrier" => array(1,1));
je fait serialize pour enregistrer dans la bdd et hop c'est bon, pour ça pas de problème. Mais dès que le nom du groupe contient un ' ça marche plus.
Quand je fait un echo de mon serialize il m'indique bien s:6:"d\'élu";a:6:{i:0;i:0;i:1;i:0;}
mais dans la bdd ça enregistre : s:6:"d'élu";a:6:{i:0;i:0;i:1;i:0;} en virant le "\" et y a une erreur dès que j'essaye de le récupérer

Code PHP :
<?php 
// Annule les effets magic_quotes_gpc/magic_quotes_sybase sur ces variables si ON.
if(get_magic_quotes_gpc()) {
if(
ini_get('magic_quotes_sybase')) {
$z = str_replace("''", "'", $_POST["nom_groupe"]);
}
else {
$z = stripslashes($_POST["nom_groupe"]);
}
}
else {
$z = stripslashes($_POST["nom_groupe"]);
}

//on enregistre les groupe dans la bdd
$z = mysql_real_escape_string($z);
$groupe[$z] = $create_droit_groupe;
mysql_query("UPDATE alliance Set groupe='".serialize($groupe)."' WHERE nom='".$alliance[0]."' AND tag='[".$alliance[1]."]' ") or die (mysql_error());

merci de me venir en aide, je seche completement Confused

bonne nuit Smile


RE: serialize - NicoMSEvent - 19-10-2007

essay un "htmlentities" avec le parametre ENT_QUOTES


RE: serialize - Dradge - 19-10-2007

Je viens mettre mon grain de sel vite fait, concaténer des informations dans un seul champ de la base de données, d'un point de vue conception, n'est pas correct.


RE: serialize - jo_link_noir - 19-10-2007

ouai je sais, c'est un peu n'importe quoi... pour pas dire complètement XD
j'ai commencer mon jeu pendant que j'apprenais sur le sdz et toutes met tables sont faites n'importe comment, je m'en suis rendu compte au fur et à mesure. Mais bon, pour le peu qu'il me reste à faire, autant le terminer, et faire une V2 après

NicoMSEvent, je pensais l'avoir fait mais il semblerais que non, ça marche maintenant^^
merci