新手尝试php:未定义索引
我试图使用url将数据从应用程序发送到php脚本,php脚本将url参数中的数据插入mysql数据库。下面是我的(基本的和完全剥离的)代码,我知道我错过了错误处理等事情新手尝试php:未定义索引,php,Php,我试图使用url将数据从应用程序发送到php脚本,php脚本将url参数中的数据插入mysql数据库。下面是我的(基本的和完全剥离的)代码,我知道我错过了错误处理等事情 <?php $hoppie_test=$_GET['{hoppie_test}']; $servername= "localhost"; $username= "root"; $password= ""; $db="messageserver"
<?php
$hoppie_test=$_GET['{hoppie_test}'];
$servername= "localhost";
$username= "root";
$password= "";
$db="messageserver";
$conn = new mysqli($servername, $username, $password, $db);
$sql = "insert into test(hoppie.test, time)values('$hoppie_test')";
$conn->close();
?>
我在这里有点发疯了,已经从研究中尝试了很多可能的选择。我想我对这一切都太陌生了,但我一直在努力学习。任何指点或提示都非常受欢迎感谢简单地说,您的“未定义索引”通知将是您试图访问一个不存在的数组元素 在这种情况下(没有看到
${hoppie_test}
字符串中的${hoppie_test}
的输出,我无法告诉您数组键是什么,但在PHP中格式如下:yoururl.com?key=value&key=value…
。只需运行print\r($\u GET)即可看到此结构
并发现您的参数正在按预期方式传递
尽管正如达曼在评论中指出的那样,您所采用的方法非常脆弱,并且存在一些不良做法(因为您让用户输入直接与数据库交互)。您可能需要查找
$\u GET['hoppie\u test']
。另外,请注意,通过获取URL中传递的数据并将其直接传递到SQL查询中,您很容易受到SQL注入攻击。您确定您的字段名为{hoppie\u test}
而不是hoppie_test
?我不知道这个URL是如何生成的,但如果它是通过PHP生成的,那么它很可能被视为变量插值,因此大括号不是变量名的一部分。此外,SQL似乎也坏了。
<url>http://localhost/acars.php?${hoppie_test}</url>
Notice: Undefined index: {hoppie_test} in D:\XAMPP\htdocs\acars.php on line 3