繁体   English   中英

通过JS将POST数据传递给PHP失败

[英]Passing POST Data to PHP via JS fails

第一次,我添加了很多东西,混合了JS,PHP,三个和许多其他东西。 这就是我尝试过的。

当有人在人体上单击THREE.js场景时,选择了人体的一部分并用javascript将其添加到其中,我想使用PHP / MySQL将选定的内容保存到数据库中。

THREE.js场景起作用,我可以选择/取消选择事物,并且生成的动态HTML输出起作用。 例如,我得到这样生成的表单:

<canvas width="1680" height="949"></canvas>
<div id="Description">Will be added to database:</div>
<form id="BodyParts" method="POST" action="index.php?s=cinput">
    <input type="checkbox" id="leg_right" name="leg_right" disabled="" value="leg_right">
    <div id="leg_right_Description">Rechtes Bein</div>
    <input type="checkbox" id="leg_left" name="leg_left" disabled="" value="leg_left">
    <div id="leg_left_Description">Linkes Bein</div>
    <input type="checkbox" id="torso_top" name="torso_top" disabled="" value="torso_top">
    <div id="torso_top_Description">Obertorso</div>
    <input type="submit" value="Speichern" id="Submit">
</form>

因此,单击提交按钮后,我仅使用var_dump($ _ POST);。 在我接收的cinput.php文件上。 但是它给出了一个空数组。 但是,当尝试重新加载该网站时,Chrome告诉我某些数据已发送,我需要再次进行验证。 你知道我的意思。 上面生成的HTML表单如何无法正常工作,并且不发送我可以在PHP中使用的POST数据呢?

您在所有输入字段中都具有disabled属性。 即使该属性的值为空( "" ),仅此属性也会导致该字段被禁用。 禁用的字段不会与表单的其余部分一起提交。 由于您的整个表格除了已禁用的输入外什么都没有,因此您什么也不提交。

例如

<input type="text" value="foo" disabled="" />
<input type="text" value="bar" disabled="false" />
<input type="text" value="baz" disabled="disabled" />

尽管通过“人为”逻辑,所有这三个输入都被禁用,但您实际上只希望最后一个输入被禁用。

您的提交按钮未被禁用,但是由于没有name属性,因此它也不会向表单提交任何内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM