IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Problème MSN et MySQL...


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 31
    Par défaut Problème MSN et MySQL...
    Bonjour,

    voila, j'ai commencé l'écriture d'un webmail en php et me heurte déjà de plein fouet au problème suivant:
    J'utilise imap_fetchbody pour récupérer les emails d'un serveur imap et cela marche très bien, mais lorsque je veux insérer le contenu du corps d'un des messages dans une table mysql, c'est là que ça marche plus... .

    MSN envoie ses mails au format html et avec des fins de messages telles que cell-ci :
    "_________________________________________________________________ FREE pop-up blocking with the new MSN Toolbar - get it now! http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/"

    Or MySQL n'aime pas ça et il répond par :
    "Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp\www\webmail\show_inbox.php on line 113
    Something is wrong in your syntax prиs de 's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/d' а la ligne 3message 2 not saved yet to inbox!"

    Et ce n'est pas tant le fait que ça soit à la base un mail envoyé en html car j'ai testé d'autres providers et ça marche bien si le balisage html utilisé n'est pas trop complexe.
    J'ai par exemple essayé avec mail.ru qui utilise des fins de messages comme suit :
    (cf Подними себе настроение! Отправь SMS с текстом FUN пробел Твоё имя на номер
    8881 - и в ответ получишь кучу смсок, которые поднимут настроение на все 100%!!!
    http://r.mail.ru/cln2875/fun.mobile...mobile.fun.html
    )
    et ça marche très bien, ma requête d'insertion passe très bien!

    En conséquence, j'ai changé par exemples les type de champs de ma table, en passant par exemple de 'text' à 'longtext' mais c'est pas mieux.

    J'ai ensuite essayé strip_tags(), str_replace(), etc... pour formater le contenu de $body avant insertion dans la table et rien y fait.

    Et pour finir, j'ai mysql_real_escape_string() et là, j'obtiens :
    Fatal error: Call to undefined function: mysql_real_escape_string()...",
    alors que j'ai bien vérrifié que j'ai l'extension mysql de chargé avec easyphp.
    Peut-être qu'il y a quelquechose que je n'ai pas déclaré comme il faut;
    En tout cas tout ça me paraît un peu tordu.

    Toute idée de votre part sera la bienvenue,

    Merci d'avance

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    Il serait peut-être une bonne idée d'utiliser les balises [code] et [quote], ce serait plus faclie pour nous de nous y retrouver ^^
    Sinon, je ne sais pas vraiment pourquoi tu ne peux pas utiliser la fonction mysql_real_escape_string() car c'est pourtant ce qui est recommandé (il serait encore mieux d'utiliser quote_smart() disponible dans la doc de mysql_real_escape_string(), d'ailleurs).
    Comme solution foireuse mais qui marche, tu peux essayer avec addslashes(). Sache quand même que le mieux serait de trouver pourquoi tu ne peux pas utiliser mysql_real_escape_string() et d'y remédier.
    N'oublie pas d'appeler stripslashes() quand tu récupères le mail de la BDD.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 31
    Par défaut
    Salut,

    C'est vrai que j'aurais pu montrer un peu de code, la requête en question, etc... .
    Je vais cependant essayer tous tes conseils et je pense que d'ici là cela devrait bien se passer.

    En tout cas, merci pour ton aide.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 31
    Par défaut
    Voila, je viens d'essayer le quote_smart et j'obtiens un erreur.
    Voici le code en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $QueryInboxCompare=sprintf("SELECT * FROM inbox WHERE inbox_message=%s",
    														quote_smart($body_t2));
     
     
    								$RechInboxCompare=mysql_query($QueryInboxCompare);
    								$NbInboxCompare=mysql_num_rows($RechInboxCompare);
    								//echo mysql_error();
     
    								if ($NbInboxCompare > 0)
    									{
    										...;
    									}
    et l'erreur :
    Fatal error: Call to undefined function: quote_smart() in c:\program files\easyphp1.6\www\webmail\show_inbox.php on line 129
    Et là j'ai pas vraiment d'idée quand à pourquoi avec mysql_real_escape_string() comme avec quote_smart() j'obtient toujours le même message...

Discussions similaires

  1. Problème de configuration MySQL Apache
    Par FredMines dans le forum Installation
    Réponses: 4
    Dernier message: 01/07/2005, 11h43
  2. Problème avec Ado, MySQL
    Par sylvain.g dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/06/2005, 10h45
  3. problème démarrage serveur mysql
    Par vbcasimir dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 25/04/2005, 14h14
  4. Problème sous requete MySQL
    Par gavelin dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/07/2004, 10h36
  5. problème de connection mysql par tcp/ip
    Par leroyphil dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2003, 18h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo