【发布时间】:2012-04-10 06:41:36
【问题描述】:
这让我很困惑.. 我现在很头疼!我已经学习 php 一个月了,这是我希望在 4 周前学习的东西:
我收到警告未定义索引并且数据库正在更新日期为 0000-00-00,然后在另一列中没有任何内容,我将查询转换为回显以查看发生了什么但似乎没有分配任何内容到从表单发送的变量!
代码: (简体)
calender.php
<form name="slots" action="updatecalender.php" method="post">
Day: <input type="text" name="dayofmonth" />
<select name="month">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
<option value="4">April</option>
<option value="5">May</option>
<option value="6">June</option>
<option value="7">July</option>
<option value="8">August</option>
<option value="9">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
<select name="year">
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
</select><br /><br />
Slots Available:
<input type="text" name="noslots" /><br />
<input type="submit" value=" - Go - " />
</form>
updatecalender.php
<?php
//connect to database
require "dbconn.php";
$dayofmonth = $_GET['dayofmonth'];
$month = $_GET['month'];
$year = $_GET['year'];
$noslots = $_GET['noslots'];
$query = INSERT INTO calender VALUES ('".$year."-".$month."-".$dayofmonth."','".$noslots."')";
$results = mysql_query($query)
or die(mysql_error());
header('Location:calender.php');
?>
我是一个初学者,所以我不打算让它安全......只是让它工作!
非常感谢您的任何建议和帮助!
【问题讨论】:
-
这真的是您使用的代码吗?以
$query =开头的行看起来至少有一个解析器错误。此外,生成的查询是什么样的?你说你附和了,可以分享一下吗? -
您的表单使用 POST,您的 PHP 使用 GET。使用 $_POST
-
哦,看。未经消毒的输入。 Little Bobby Tables 会很开心。地球上是否有真正担心 SQL 注入的 PHP/SQL 教程? “我是初学者,所以我不打算让它变得安全”——那又怎样?理智的 API 可以免费提供安全性。使用 PDO。不要使用 mysqli。
-
@mdi:看起来你先抓住了它。您应该将其发布为答案。
-
对不起,我的意思是我回应了它,所以我可以查看变量是否已被分配......关于查询,我错过了我复制到这里的代码“虽然我还在学习(观察)