Php 无法识别我的HTML表单值

Php 无法识别我的HTML表单值,php,html,forms,Php,Html,Forms,我不完全确定,但看起来我的表单(例如,第一个文本框的Text1)发布的值没有被PHP识别 整晚都在努力,希望有人能帮上忙?塔克斯 <?php $dbhost = 'localhost'; $dbuser = 'xeuser'; $dbpass = 'xepass'; $conn = mysql_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('Could not connect: ' . mysql_error()); }

我不完全确定,但看起来我的表单(例如,第一个文本框的Text1)发布的值没有被PHP识别

整晚都在努力,希望有人能帮上忙?塔克斯

<?php
$dbhost = 'localhost';
$dbuser = 'xeuser';
$dbpass = 'xepass';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);

if(! $conn )
{
 die('Could not connect: ' . mysql_error());
}

$sql = 'INSERT INTO `amis_q1`.`crop1_8_9` (
`IDENTIFICATION` , `ADD` , `MARKET` , `DISTRICT` , `ENUMERATOR` , `Seller` , `Name_of_Unit` , `Number_of_Sellers` , `Average_Weight` , `Estimated_Weights` , `Type_of_Seller` , `Tramsport` , `Source` , `Remarks` , `CHECKED` , `BY` , `SUPERVISOR` , `OFFICE` , `DATE` , `INITIALS`
)
VALUES 
(   $_POST['Text1'],'$_POST[Text2]','$_POST[Text3]','$_POST[Text4]','$_POST[Text5]','$_POST[Text6]','$_POST[Text7]','$_POST[Text8]','$_POST[Text9]','$_POST[Text10]','$_POST[Text11]','$_POST[Text12]','$_POST[Text13]','$_POST[Text14]','$_POST[Text15]','$_POST[Text16]','$_POST[Text17]','$_POST[Text18]','$_POST[Text19]','$_POST[Text20]'
)';

mysql_select_db('amis_q1');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
 die('Could not enter data: ' . mysql_error());
}
print 'Inputted';
mysql_close($conn);
?>

首要问题:不要使用
mysql
函数,并且阅读有关SQL注入的内容,因为从安全角度看,您的代码(以及下面正确的代码)都存在严重缺陷

除此之外,问题在于在
$sql
中使用单引号。下面是执行变量后半部分的正确方法:

$sql = ') VALUES (' . $_POST['Text1'] . ', ' . $_POST['Text2'] . ')';

…这是在PHP中连接字符串的正确方法。

请停止正在进行的操作并阅读PHP教程。即使您的代码正常工作(这是一个非常基本的语法错误,由unscaped
'
引起),它也会非常容易受到SQL注入的攻击。什么是
Text1
Text2
?发布HTML后,我们无法通过查看服务器端代码判断出问题所在,您的
HTML表单在哪里?您正在使用并且应该使用。你也很容易受到现代API的影响,因为它会让你更轻松。值得注意的是,你绝对不能这样做,尽管它修复了语法问题,但留下了巨大的安全漏洞。完全同意,这就是我从第一句话开始的原因,这将不可避免地被OP完全跳过。您还没有修复任何字符串更改<代码>$foo=“abc$def[hij]jkl”
在功能上与
$foo=“abc”相同$def['hij']。“jkl”我会-1,但是sql注入警告无论如何都是一个加号,所以+0单引号和双引号非常不同,而且您的示例与OP的示例也不一样。哇,有很多信息需要了解。谢谢,我知道注射的问题,只是想让一个基本的表格工作。我对这一点很陌生,这一点现在已经很明显了。谢谢