![](/img/trans.png)
[英]how can i get form data validate it with javascript and send it to database using php
[英]How can I validate a sentence using PHP and JavaScript?
我目前正在尝试验证用户输入的句子是否与期望的句子匹配。 预期的句子存储在PHP变量$rebuiltSentence
,例如“ the cat sat”。
问题是,当我尝试调用JavaScript函数formSubmit()
,需要给它提供检查语句,因此理想情况下,我将调用formSubmit($ rebuiltSentence)。 我认为这行不通,因为它认为正在传递几个单独的字符串。
这是我所拥有的:
//sentence.php
<input type='button' value='Submit' onClick=formSubmit('$rebuiltSentence')
和
//validate.js
function formSubmit(correct)
{
var contents = document.getElementById('sentenceBuilder').value;
if(contents==correct){
alert('The Sentences Match');
}else{
alert('The Sentences Dont Match');
}
window.location.reload(true);
}
有什么想法可以解决这个问题吗?
您应该引用该属性并适当地对其进行转义:
echo '<... onClick="formSubmit(' . htmlspecialchars(json_encode($rebuiltSentence)) . ');">'
您可以将句子添加为隐藏字段以进行验证。
//sentence.php
<input type='hidden' id=rebuiltSentence value='$rebuildSentence'>
<input type='button' value='Submit' onClick=formSubmit()>
并验证您可以轻松使用
//validate.js
function formSubmit()
{
var contents = document.getElementById('sentenceBuilder').value;
var correct = document.getElementById('rebuiltSentence').value;
if(contents==correct)
{
alert('The Sentences Match');
}else{
alert('The Sentences Dont Match');
}
window.location.reload(true);
}
看起来您正在传递字符串$ rebuiltSentence,而不是传递此参数在PHP中的句子。
更改为关注
//sentence.php
echo "<input type='button' value='Submit' onClick=formSubmit('".$rebuiltSentence."')";
它将回显$ rebuiltSentence的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.