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

PHP & Base de données Discussion :

Insertion du texte dans la BD à partir de TinyEditor [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut Insertion du texte dans la BD à partir de TinyEditor
    Bonjour à tous ,
    Voiçi mon code :
    http://pastebin.com/VH2zB3jE
    L'alert "Annonce ajoutée" s'affiche dés que je clique sur submit mais dans la base de données ça donne un vide

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Il faut que tu mettes ton traitement PHP dans ton formulaire, c'est-à-dire avant ta balise </form>. Il est préférable de mettre les include dans le <head>. Essayes déjà ça, tu devrais voir des changements.

    Sinon, remplace ça :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $annonce=$_POST['tinyeditor'];
    $annonce=addslashes($annonce);
    par :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $annonce=mysql_real_escape_string(addslashes($_POST['tinyeditor']));

    Ajoutes un echo "texte"; juste après if (isset($_POST['tinyeditor'])){ pour vérifier si ça passe dans le test.
    Il est, aussi, possible de faire un test sur la soumission du formulaire.
    Pour plus de clarté, mets ton code javascript (celui qui s'occupe de l'éditeur de texte) dans un fichier javascript externe.

  3. #3
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Qu'est-ce que vient faire addslashes() au milieu d'un mysql_real_escape_string() ?

  4. #4
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    @vinceom92

    J'ai essayé tout et ça marche pas , pour echo "texte"; ça marche ms l'important c'est qu'il insére un vide dans la BD :/

  5. #5
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    @rawsrc

    Dnc quel solution vous proposez ?

  6. #6
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Je propose de s'en passer.

    Bien que mysql_real_escape_string soit totalement obsolète et qu'il devrait disparaître très prochainement, il échappe correctement les données et du coup le addslashes ne sert ici strictement à rien.

  7. #7
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    Je l'ai changé , mais il reste le problème principale :/

  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Si tu es sûr que c'est la requête SQL, remplace la par :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO `annonce`( `login_admin`, `titre`, `annonce`) VALUES ('Nabil','hh','$annonce')
    .
    Je suppose que s'il y a une insertion dans la base de données, ton message d'erreur ne s'affiche pas.
    Etant donné qu'à mon avis, l'identifiant est la clé primaire (il le faut !), ce n'est pas la peine de l'alimenter.

    Au lieu de "Nabil", il serait mieux d'insérer une zone de texte à part si tu veux toujours insérer ça, ce qui m'étonnerait !

  9. #9
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    vinceom92
    J'ai aucun msg d'erreur qui s'affiche, au contraire l'insertion est correcte et ça donne un msg qui signifie la réussite d'insertion ,seul le champ d'editeur qui est vide :/
    J'ai essayé la requête et il reste le mm blème , oui il reste tjrs Nabil cm etant admin

  10. #10
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 278
    Points : 74
    Points
    74
    Par défaut
    Citation Envoyé par elkhazak Voir le message
    vinceom92 seul le champ d'editeur qui est vide :/
    Qu'est-ce que tu veux dire ?
    Citation Envoyé par elkhazak Voir le message
    J'ai essayé la requête et il reste le mm blème , oui il reste tjrs Nabil cm etant admin
    C'est logique puisque dans ta requête SQL, tu mets un texte brut (Nabil).
    Si tu veux insérer des données de l'utilisateur, il faut :
    -faire un formulaire HTML (<form>, </form>)
    -faire le traitement PHP dans lequel il faut récupérer et protéger avec mysql_real_escape_string ce que l'utilisateur a saisi. De la sorte, tu pourras insérer ou modifier dans la base de données le texte de l'utilisateur.

    Tu as deux possibilités pour le traitement PHP du formulaire :
    -soit tu le mets avant la balise </form>
    -soit tu mets <form method="POST" action="fichier_de_reception.php" />
    Dans fichier_de_reception.php, il faudra :
    -faire un include vers ton fichier PHP de connexion avec ta base de données
    -mettre session_start(); pour ne pas perdre ta session
    -faire un test pour savoir si ton formulaire a était soumis avec if (isset($_POST['name_bouton_soumission']) { pour éviter qu'il te mettes un avertissement au premier chargement de ta page
    -dans ton test, protéger tes zones de texte avec mysql_real_escape_string, voici un exemple :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $nom=mysql_real_escape_string($_POST['nom'])
    que tu pourras utiliser dans ta requête SQL.

  11. #11
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    quand je clque sur valider , le champ id_annonce s'est remplis , le titre s'est remplis , et l'annonce traité avec l’éditeur donne un vide et non pas null .

    J'ai refais tt ça et ça marche pas !! le probléme c'est quand je tape echo $annonce ; il s'affiche rien , donc l'édirteur ne récupére rien ou il récupére des espaces (vide)

  12. #12
    Membre régulier
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Janvier 2014
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2014
    Messages : 160
    Points : 71
    Points
    71
    Par défaut
    J'ai changé l'éditeur et ça marche mnt Merçii en tt cas

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. insertion de texte dans word via vb
    Par godik dans le forum VBA Word
    Réponses: 1
    Dernier message: 15/05/2006, 13h07
  2. [VBA-E] Insertion de texte dans word
    Par malhivertman1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/05/2006, 16h17
  3. insertion du text dans un champs d'une page internet
    Par lassmust dans le forum Web & réseau
    Réponses: 1
    Dernier message: 24/04/2006, 10h55
  4. Norme d'insertion/affichage texte dans une DB ?
    Par kiwikiller dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 21/12/2005, 11h53
  5. Ajouter du texte dans un input à partir d'une autre fenêtre
    Par Michaël dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/04/2005, 20h14

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