Ne pouvez pas obtenir la valeur du textarea en PHP
Je vais avoir des problèmes à obtenir la valeur de la zone de texte en PHP (se indéfini).
Mon code est assez simple.
Mon code HTML est:
<form name="contactform" method="POST" action="submit_form.php">
<input type="text" class="formInput" placeholder="Your Name" id="first_name" maxlength="50" size="20" />
<input type="text" class="formInput" placeholder="Email Address" id="email" maxlength="80" size="20" />
<textarea class="formInput" placeholder="Your Message" name="comments" id="comments" maxlength="1400" cols="20" rows="6"></textarea>
<input type="submit" id="SubmitContactForm" class="myButton" value="Submit" />
</form>
Mon PHP:
echo $_POST['comments'];
Cette résultats dans undefined
, peu importe ce que j'écris à l'intérieur de la zone de texte. J'ai cherché ici pour des solutions et a trouvé quelques trucs, comme l'ajout de "nom" et "id" et de les rendre à la fois différentes, en ajoutant htmlspecialchars($_POST['comments'])
et ainsi de suite, toutes ces solutions ne fonctionnent pas. Je vais prendre note et dire que je peux obtenir de l'autre des champs de valeurs sans aucun problème, juste ce textarea.
Les idées de ce que peut être le problème?
- êtes-vous sûr que le textarea élément est à l'intérieur de la forme en html?
- Essayez d'utiliser Firebug / de votre navigateur, outils de développement, et d'inspecter la requête HTTP. Voir si la valeur est envoyé.
- Votre HTML ne comporte pas de Nom d'attribut dans la balise Textarea.
- btw utilisation name="commentaires", nom est lié à la variable POST
- - Le textarea est à l'intérieur de la <form></form>. - J'ai essayé d'utiliser le nom de l'attribut, ne fonctionne toujours pas :-/
- Sans le nom de l'attribut, il ne peut certainement pas de travailler! Veuillez donc fourni quelques corrigé le code qui ne fonctionne toujours pas et ajouter votre formulaire où votre textarea est placé dans!
- J'ai essayé tous les codes qui ont été proposées à ce jour, tous de résultat indéterminé
- Avez-vous tout de JavaScript sur votre page qui fait quelque chose avec ce textarea?
- Oui, mais j'ai annulé pendant toutes ces vérifications.
- Êtes-vous sûr? Pouvez-vous préciser votre problème à l'
form
-tag, votre textarea et un bouton "soumettre" et ont encore ce problème? Je ne peux pas croire que. De sorte que certaines autres parties de votre page doit l'influencer. Donc, sans le savoir à vos autres pièces - comment pouvons-nous vous aider?? Mais encore: Sans nom-attribut, il ne peut jamais travailler. Peut-être que vous avez une autre entrée-champ avec le même nom quelque part dans votre formulaire? - Est
$_POST['comments']
la chaîne"undefined"
? Ou le PHP valeurNULL
? PHP n'a pas une valeur appelée indéfini. Si c'est la chaîne, elle sonne comme une partie du code javascript dans votre page de réglage de la valeur. - Ainsi, il semble (enfin) de travail maintenant. J'ai redémarré le serveur web et inclus le nom de l'attribut. Merci à vous tous pour vos réponses et lignes directrices, qui m'a beaucoup aidé!
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas défini le nom de l'attribut pour votre textarea.
Ajouter:
name="comments"
à elle:Si cela ne fonctionne toujours pas, assurez-vous que vous envoyez votre formulaire à l'aide de
method="post"
Vous avez besoin d'un nom d'attribut dans votre textarea
name="commentaires"
Vous avez oublié d'ajouter le nom de l'attribut. Votre code devrait ressembler à ceci
Essayez d'ajouter ce point à l'script qui reçoit le post de formulaire:
Si "commentaires" sous "GET", alors vous n'avez pas réglé le formulaire method=post
D'abord définir comme
$comment=$_POST['comments'];
après cela, vous pouvez faire ce que vous voulez,Remarque: Ne pas l'utiliser directement comme
$_POST['comments'];
parce que, dans certains cas, il sera jeté une erreur du/des avis etc..Vous pouvez essayer de préciser la forme de l'attribut de la balise textarea. En cela, vous définissez l'id de votre formulaire. Avantage est que cela vous permet de placer votre textarea à l'extérieur de la forme.
Source: http://www.w3schools.com/tags/tag_textarea.asp
Supprimer certains de vos
textarea
classe commeà
Cela dépend de votre modèle (le Modèle Acheté).
Développer, y compris certains de JavaScript pour obtenir la valeur de l'objet sur l'INTERFACE utilisateur
mais pour les éléments comme
input-text
viens de trouver$('input[type=text]')
.