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
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
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 :
par :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $annonce=$_POST['tinyeditor']; $annonce=addslashes($annonce);
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.
Qu'est-ce que vient faire addslashes() au milieu d'un mysql_real_escape_string() ?
- PDO++ : Une nouvelle façon d'utiliser PDO. Billet de blog || Code source
- PhpEcho : Un moteur de rendu en une seule classe ! Nouvelle version (release 2.3.2) publiée le 18/04/2020 : Billet de blog || Code source
@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 :/
@rawsrc
Dnc quel solution vous proposez ?
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.
- PDO++ : Une nouvelle façon d'utiliser PDO. Billet de blog || Code source
- PhpEcho : Un moteur de rendu en une seule classe ! Nouvelle version (release 2.3.2) publiée le 18/04/2020 : Billet de blog || Code source
Je l'ai changé , mais il reste le problème principale :/
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 !
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
Qu'est-ce que tu veux dire ?
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 :que tu pourras utiliser dans ta requête SQL.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part $nom=mysql_real_escape_string($_POST['nom'])
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)
J'ai changé l'éditeur et ça marche mnt Merçii en tt cas
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager