来自输入字段的文本值未存储在PHP数据库中

时间:2018-11-05 09:53:12

标签: mysql

我有一个脚本,可以在多个记录中添加产品,价格,数量,产品宽度,产品高度之后创建每一行的总计。当我在包括产品名称在内的所有输入字段中输入数值时,查询将运行并输入记录,但是当我输入字母产品名称时,查询将不会运行。

class Message(models.Model):
    sender = models.ForeignKey(
        User,
        on_delete=models.CASCADE,
        related_name='sent_messages'
    )
    receiver = models.ForeignKey(
        User,
        on_delete=models.CASCADE,
        related_name='received_messages'
    )
    message = models.CharField(max_length=5000)
    created_at = models.DateTimeField(auto_now_add=True, blank=True)
    updated_at = models.DateTimeField(auto_now=True, blank=True)

1 个答案:

答案 0 :(得分:1)

第一件事。在使该代码上线之前,您应该学习SQL注入。

现在回答。您需要使用单引号将产品参数包装起来:

$sql = "INSERT INTO invoice_order(invoice_number, product, price, quantity, width, height, total) 
  VALUES (".$invoice_number.",'".mysqli_real_escape_string($connect, $_POST['product'][$i])."',".$_POST['price'][$i].",".$_POST['quantity'][$i].",".$_POST['width'][$i].",".$_POST['height'][$i].",".$_POST['total'][$i].")";