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

Langage PHP Discussion :

Insérer une certaine chaîne de caractères dans MySQL


Sujet :

Langage PHP

  1. #21
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    Si inferieur à 4.3.3 essaye ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
     
    function  afficher_msg($i,$iinit,$result) {
     
     while ($ligne=mysql_fetch_array($result,MYSQL_NUM) and $i-10<0)
    {
    $i++;
    echo "<tr>";
     
    $date=$ligne[0];
     
    $reste=NULL;
     
    $format="%d-%d-%d-%s";
     
    sscanf($date,$format,$year,$month,$day,$reste);
     
    $date=$day."-".$month."-".$year;
     
    if (isset($reste)) { $date .= "-".$reste; }
     
     
            echo "<td valign=top width=120>".nl2br($date)."</td>"; 
     
    	echo "<td align=left valign=top width=120>".str_replace('&lt', '>',str_replace('&gt', '<',nl2br(html_entity_decode($ligne[1]))))."</td>"; 
     
    	echo "<td>".nl2br($ligne[2])."</td>"; 
     
    	echo "</tr>";
    }
    echo "</table>";
     
    }

  2. #22
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 448
    Points : 5 808
    Points
    5 808
    Billets dans le blog
    1
    Par défaut
    Pas mieux

  3. #23
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    J'ai oublié les ; pour les &lt; et &gt; tu les as corrigés ?

    Il t'affiche toujours la même chose ou c'est légèrement différent ?

  4. #24
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    T'as une page où je peux voir le résultat ?

  5. #25
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 448
    Points : 5 808
    Points
    5 808
    Billets dans le blog
    1
    Par défaut
    Je n'avais pas corrigé le bug des ; ne l'ayant pas remarqué, mais ça n'arrange rien. Pour voir ce que ça donne, va là : supprimé et pour faire un essai, fais "saisir un nouveau message" (Ayant développé en PHP une interface qui me permet d'envoyer des requêtes SQL, je pourrai l'effacer) (le lien que tu pourras voir dans un message un peu plus bas, c'est moi qui l'avait fait, en rentrant le code html dans le message (pas à la portée des utilisateurs normaux)). Sinon, c'est vrai qu'il manque aussi la fonctionnalité de prévisualisation, et d'édition d'un post dont on est l'auteur...

  6. #26
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    Est ce que tu pourrais tester en enlevant le $texte=addslashes($texte); avant l'entrée dans la base ?

  7. #27
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 448
    Points : 5 808
    Points
    5 808
    Billets dans le blog
    1
    Par défaut
    J'ai supprimé l'URL de mon site, comme tu me le conseillais et aussi enlevé $texte=addslashes($texte); avant l'entrée dans la base, mais ça ne résoud rien...

  8. #28
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    Bon alors le premier truc que tu vas faire dans toutes tes entrées en base qui proviennent d'un utilisateur c'est d'utiliser la fonction mysql_real_escape_string($ta_données_utilisateur);

    exemple :

    $requete="INSERT INTO truc (machin, bidule) VALUES ('".mysql_real_escape_string($_POST['machin'])."','".mysql_real_escape_string($_POST['bidule'])."')";

    Sinon c'est du suicide.

    On aurait du commencer par là ça doit pouvoir régler tout tes problèmes, oublie les htmlentities et autres joyeuserie.

    Si tu trouve fastidieux de refiare toutes tes requetes, met ça dans ta page de fonctions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    function ES($truc)
    {
    $truc=mysql_real_escape_string($truc);
    return $truc;
    }

    Et utilise là comme ça :

    $requete="INSERT INTO truc (machin, bidule) VALUES ('".ES($_POST['machin'])."','".ES($_POST['bidule'])."')";

  9. #29
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 448
    Points : 5 808
    Points
    5 808
    Billets dans le blog
    1
    Par défaut
    et zut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mailto:schmittlau@aol.com">schmittlau@aol.com","lolo","2009-12-05-21:50")' at line 1

  10. #30
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    Au risque de me répéter, enlève les " pour séparer tes champs, le correct est d'utiliser '.

  11. #31
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 448
    Points : 5 808
    Points
    5 808
    Billets dans le blog
    1
    Par défaut
    Tu me l'avais déjà dit ? C'est enfin nickel. Merci beaucoup
    Je vais maintenant rajouter la possibilité qu'un utilisateur rajoute un lien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (avec la syntaxe suivante :http://adresse, texte du lien)
    . J'espère que j'aurais moins de problème.
    Et au fait, pourquoi fallait-il mettre des ' à la place des ", vu que ça marchait avant ?

  12. #32
    Membre du Club Avatar de Jonahboss
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Espagne

    Informations forums :
    Inscription : Mai 2009
    Messages : 90
    Points : 56
    Points
    56
    Par défaut
    Parce que ça marche si tu ne sécrise pas tes requetes avec mysql_real_escape_string.

    Content d'avoir aider

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Une seule chaîne de caractères dans l'adresse au lieu de deux
    Par mihelicjm dans le forum APIs Google
    Réponses: 12
    Dernier message: 31/10/2014, 17h02
  2. [XL-2010] Recherche d'une sous-chaîne de caractères dans une cellule
    Par StephThai dans le forum Excel
    Réponses: 7
    Dernier message: 13/01/2014, 04h21
  3. Recherche une sous chaîne de caractères dans un Vector
    Par brino1987 dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 12/06/2013, 14h31
  4. Réponses: 7
    Dernier message: 30/06/2011, 00h40
  5. Réponses: 7
    Dernier message: 27/04/2007, 10h01

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