php抓取网页数据插入数据库(如何从我插入数据的同一个php表单中获取数据库中的信息)
优采云 发布时间: 2022-04-07 20:12php抓取网页数据插入数据库(如何从我插入数据的同一个php表单中获取数据库中的信息)
如何从我插入数据的同一个php表单中获取数据库中的信息,包括存储的信息,以便可以更新数据库中的数据:
我使用了这个更新语句,但得到了一个错误:
$sql="UPDATE findings
SET Finding_ID=$_GET[Finding_ID], ServiceType_ID=$_GET[ServiceType_ID], RootCause_ID=$_GET[RootCause_ID] , RiskRating_ID=$_GET[RiskRating_ID] , Impact_ID=$_GET[Impact_ID] ,Efforts_ID= $_GET[Efforts_ID], Likelihood_ID= $_GET[Likelihood_ID], Finding=$_GET[Finding],Implication=$_GET[Implication] , Recommendation =$_GET[Recommendation] , Report_ID=$_GET[Report_ID]
WHERE Finding_ID=$Finding_ID, ServiceType_ID=$ServiceType_ID, RootCause_ID=$RootCause_ID , RiskRating_ID=$RiskRating_ID , Impact_ID=$Impact_ID ,Efforts_ID= $Efforts_ID, Likelihood_ID= $Likelihood_ID, Finding=$Finding,Implication=$Implication , Recommendation =$Recommendation , Report_ID=$Report_ID";
这是我将插入和更新数据的表单的代码:
Insert New Data
<p> Service Name :
Ref : <br />
Title : <br />
Risk Rating :
-Select-
<br />
Root Cause :
-Select-
<br />
Impact :
-Select-
<br />
Likelihood :
-Select-
Efforts :
-Select-
Finding :
Implication:
Recommendation :
</p>
这是错误:
Notice: Undefined index: Finding_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined index: ServiceType_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined index: RootCause_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined index: RiskRating_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined index: Impact_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined index: Efforts_ID in C:\xampp\htdocs\ers\edit.php on line 122
Notice: Undefined variable: Finding_ID in C:\xampp\htdocs\ers\edit.php on line 126
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' ServiceType_ID=, RootCause_ID= , RiskRating_ID= , Impact_ID= ,Efforts_ID= , Lik' at line 2
2个答案:
答案 0 :( 得分:1)
WHERE 的条件应该是使用 AND、OR 而不是逗号。
WHERE Finding_ID=$Finding_ID, ServiceType_ID=$ServiceType_ID,....
应该
WHERE Finding_ID=$Finding_ID AND ServiceType_ID=$ServiceType_ID AND ...
答案1:(得分:0)
您的查询基本上是欢迎每个人访问数据库的大门。
第一:不要在查询中使用直接获取参数。最初与他们合作。
第二位:即使是数字也要加''。为您提供额外的安全保障。
第三个:WHERE 参数是 AND 或 OR
分离
当然,您可以采取更多的预防措施,但最好在一开始就这样做。
PS:长查询在拆分时更易于管理和阅读;并尽量保持你的代码干净漂亮。没有人喜欢使用乱码。