<?php
$_REQUEST['one']='John';
$_REQUEST['two']='Habernash';
$output= " insert into tbl_user set first_name=' " .$_REQUEST['one']. " ',
last_name=' " .$_REQUEST['two']. " ' ";
我不明白这里的字符串是怎么回事。我读到最外面的引号确定是否会评估内部变量。那么为什么围绕请求变量需要连接运算符和双引号?我尝试了另一段代码而不是做&#39; &#34 ;. $ _REQUEST [&#39; one&#39;]。&#34; &#39;我做过&#39; {$ _REQUEST [&#39; one&#39;]}&#39;它产生了相同的输出。那么&#34;有原因吗? &#34;方法更好,它是如何工作的?只是困惑,谢谢你的帮助。
答案 0 :(得分:0)
这是编写某些数据库SQL的方式。如果列需要一个字符串,它希望变量用引号括起来 - 因此转义的双引号周围的单引号。
这里有双引号:PHP字符串。单引号:SQL字符串。
请注意,您所拥有的这段代码通过允许原始输入直接进入SQL字符串而习惯于不清理SQL字符串。