Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 更新MySQL和日期时间本地字段_Php_Mysql_Sql Update - Fatal编程技术网

Php 更新MySQL和日期时间本地字段

Php 更新MySQL和日期时间本地字段,php,mysql,sql-update,Php,Mysql,Sql Update,好的,我有一个insert语句运行良好,一个delete语句正在运行。 然而,更新已经一天多没有出现在上面了,也看不到问题所在,我认为唯一可能的是MySQL中的日期时间本地字段,但它可以在insert上工作 表格 $Band_id = (int)$_GET['id']; $result = mysql_query("SELECT * FROM bands where Band_id ='$Band_id'"); $row = mysql_fetch_array($result);

好的,我有一个insert语句运行良好,一个delete语句正在运行。 然而,更新已经一天多没有出现在上面了,也看不到问题所在,我认为唯一可能的是MySQL中的日期时间本地字段,但它可以在insert上工作

表格

$Band_id = (int)$_GET['id'];    
  $result = mysql_query("SELECT * FROM bands where Band_id ='$Band_id'");
  $row = mysql_fetch_array($result);
  ?>
  <form method="post" action="ammenddetails.php">
  <input type="hidden" name="id" value="<? echo "$row[Band_id]"?>">

    <tr><td>Band Name</td></br>
    <td><input type="text" name="Name" size="20" value="<? echo "$row[Name]"?>"></td></tr></br>

    <tr><tr><td>Show Name</td></br>
    <td><input type="text" name="show" size="20" value="<? echo "$row[show]"?>"></td></tr></br>

    <tr><td>Venue</td></br>
    <td><input type="text" name="Venue" size="20" value="<? echo "$row[Venue]"?>"></td></tr></br>

    <tr><td>Category</td></br>
    <td><input type="text" name="Category" size="20" value="<? echo "$row[Category]"?>"></td></tr></br>

    <tr><td>Date and Time</td></br>
    <td><input type="datetime-local" name="time" size="20" value="<? echo "$row[time]"?>"></td></tr></br>

    <tr><td>Price</td></br>
    <td><input type="number" name="price" size="20" value="<? echo "$row[price]"?>"></td></tr></br>

    <tr><td>Stock</td></br>
    <td><input type="number" name="Stock" size="20" value="<? echo "$row[Stock]"?>"></td></tr></br>

    <tr><td>Infomation</td></br>
    <?php echo "<td><textarea name= 'infomation' cols=\"50\" rows=\"8\" >" .$row['infomation']. "</textarea></td>";?></tr></br>

    <tr><input type="submit"name="submit value" value="Update"></td>
    </tr>
  </form>
现在已试用建议查询输出:

 UPDATE `bands` SET SET `Name`='Killers', `show`='Big Time High', `Venue`='London Apolo', `Category`='Rock', `price`='45', `Stock`='75', `time`='', `infomation`='BLOB values are trea' WHERE `Band_id`='1'
因此,查询得到的是正确的数据,只是没有更新bd,这是您的问题

SET `Name`=`$Name`, 
您可以使用“定义字段,但对于需要使用的变量”

e、 g

更好的方法是:

SET `Name`='{$Name}',


试试看,让我知道!:)

使用反勾号转义表名和列名。使用引号来限制字符串。感谢您提供的信息,我将尝试并实现它。
mysql\u query
是一个过时的接口,不应在新的应用程序中使用,并将在未来的PHP版本中删除。一个现代的替代品。如果您是PHP新手,像这样的指南会有所帮助。虽然你一直很小心地避开这里的事情,但你离灾难只有一步之遥。占位符值提供了一个额外的安全层。太棒了,前几天我订购了一本关于现代PDO phd的书,只是等待亚马逊交付。大括号不是“更好”。他们只是使用字符串插值使危险的SQL合成技术僵化。@Vick我将尝试第二个选项,并让您知道它是否有效。只有当所讨论的变量中有类似
$\u POST['value']
的内容时,才需要大括号,但这些内容不应该首先出现在您的查询中。你观察到错误的引用是对的。在MySQL中,值可以是
'
`
仅用于数据库、表和列名。
SET `Name`=`$Name`, 
SET `Name`='$Name',
SET `Name`='{$Name}',