Problème de quote avec daforum

Répondre
BigZ[SHN]
le 02/02/2005 à 09:09
BigZ[SHN]
Bonjour,

Je continue avec les quelques bugs que j'ai pu relever dans da forum...

Il est impossible de poster un message avec des "" dedant...ca crée une erreur..

Comment résoudre cela?
Merci
LA GLOBULE
le 02/02/2005 à 10:00
LA GLOBULE
Quelle erreur ?

PS : essayer de trouver un titre de sujet qui nous permet de voir de quoi va parler le sujet...
BigZ[SHN]
le 02/02/2005 à 10:48
BigZ[SHN]
Erreur SQL !INSERT INTO daforum_reponses VALUES("",""Test" ","2005-02-02 10:45:51","24","1","1","1")
Erreur de syntaxe près de 'Test" ","2005-02-02 10:45:51","24","1","1","1")' à la ligne 1

En mettant un message avec "Test" dedant!
LA GLOBULE
le 02/02/2005 à 11:15
LA GLOBULE
C'est un problème de magic_quote.

Il faut faire un addslashes avant l'insertion dans la base, puis un stripslashes avant l'affichage des messages.

Si tu actives les magic_quote dans ton php.ini, le problème disparait.
BigZ[SHN]
le 02/02/2005 à 13:02
BigZ[SHN]
Ben non ca marche pas misuex j'ai toujours la meme erreur.
j'ai rajouter les add like this :

$nouveau_titre = addslashes($_POST['nouveau_titre']);

et j'ai mis tous les magic_quote a on!

snif
LA GLOBULE
le 02/02/2005 à 14:45
LA GLOBULE
Non, si tu actives les magic_quote, ne fais pas de addslashes (je viens de tester en téléchargeant daforum, avec les magic_quote activées, je n'ai pas ton problème).
BigZ[SHN]
le 07/02/2005 à 14:35
BigZ[SHN]
Alors j'ai activé les 3 magic_quote et ca ne fonctionne toujours pas.

Qu'on soit bien d'accord j'ai des problèmes avec les guillemets (SHIFT 2) " par avec les apostrophes...
moogli
le 07/02/2005 à 17:16
moogli
Salut,

j'ai sa a partir d'un code pour éviter ces soucis :
<?php
class magic_quote {
// Définition des methodes
//var ...;

// Définition du constructeur (si besoin)
function magic_quote () {
//contructeur
}
//proprietés
//verifie si magic_quote_gpc ==1
function Myaddslashes($chaine) {
return (get_magic_quotes_gpc() == 1 ? $chaine : addslashes($chaine) );
}

function Mystripslashes($chaine) {
return (get_magic_quotes_runtime() == 1 ? stripslashes($chaine) : $chaine );
//avant y avait get_magic_quotes_gpc:(
}
}//fin de la class
?>


c'est deux fonctions test ta config !

avant de mettre tout a on ou off il faut savoir de quoi on parle !

le magic_quote_gpc, echappe les infos issus de Get Post et Cookie,

le magic_quote_runtime permet de supprimer les éventuelle \ (ou non) d'une chaine issu d'un fichier ou d'une base de donnée !

pour le 3ème echappement style sybase :/

enfin du a du tout voir dans le php.ini smiley

Le problème est du aux ", il pourrais être du aux ' si glob avait utiliser des ' pour limiter ces chaines :)

un addslashes devrait suffire, sinon un htmlentities devrait résoudre ce problème :)

juste comme sa pourquoi shift 2 ? moi j'appui sur la touche " :) (j'ai pas du comprendre la :))


smiley
Il en faut peu pour être heureux !!!!!
BigZ[SHN]
le 08/02/2005 à 08:33
BigZ[SHN]
Alors je doit avouer que je n'ai rien compris (8h30 du mat')

elle servent a quoi ces fonctions?

Ensuite le addslashes je l'ai fait, mais ca n'y change rien, dans la mesure ou il n'ajoute un / que devant l'apostrophe simple.

Et moi pour faire un apostrophe je doit appuyer MAJUSCULE et 2, je me demande bien comment tu fait pour l'appeler avec une seule touche...lol

Merci encore
Répondre
LoadingChargement en cours