Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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 我可以在sql查询之间回显一些内容吗? $query=“插入订户(随机码、电子邮件、CreateDate、UpdateDate)值(?,,,,?,CURDATE(),”)”; echo$query;_Php_Mysql_Html - Fatal编程技术网

Php 我可以在sql查询之间回显一些内容吗? $query=“插入订户(随机码、电子邮件、CreateDate、UpdateDate)值(?,,,,?,CURDATE(),”)”; echo$query;

Php 我可以在sql查询之间回显一些内容吗? $query=“插入订户(随机码、电子邮件、CreateDate、UpdateDate)值(?,,,,?,CURDATE(),”)”; echo$query;,php,mysql,html,Php,Mysql,Html,如果我在sql语句中添加条件语句,它将不会检查或触发php函数 $query="INSERT INTO subscriber (RandomCode,Email,CreateDate,UpdateDate <?if ($num!=0) echo ','.$string; ?> ) VALUES (?,?,?,?,CURDATE(),'',<? if ($num!=0) echo ','.$stringResult; ?>)"; echo $query; if(!isse

如果我在sql语句中添加条件语句,它将不会检查或触发php函数

$query="INSERT INTO subscriber (RandomCode,Email,CreateDate,UpdateDate <?if ($num!=0) echo ','.$string; ?> ) VALUES (?,?,?,?,CURDATE(),'',<? if ($num!=0) echo ','.$stringResult; ?>)";
echo $query;
if(!isset($set['Attribute']))

{$set['Attribute']=NULL;}您可以使用内联三元:

   if (!isset($set['Attribute']))
{$set['Attribute']=NULL;} <=======This statement  to check if there is no value posted
$stringResult=$stringResult.$_POST[$set['Attribute']].",";}}
$stringResult = substr($stringResult, 0, -1);
echo $stringResult;
否则,只需使用
if
语句将其分解:

$str = 'abcd' . ($num != 0 ? ',' : '' ) . 'efg';

您遇到的问题是,当您已经使用PHP时,您正试图打开
。字符串将按原样输出到mysql处理程序。您只需设置一个变量,然后将结果添加到字符串中即可

$query = "INSERT INTO subscriber (RandomCode, Email, CreateDate, UpdateDate ";

if ($num != 0) {
    $query .= ', ' . $string;
}   

$query .=   ") VALUES (?, ?, ?, ?, CURDATE(), ''";

if ($num != 0) {
    $query .= ', ' . $stringResult;
}

$query .= ")";
然后,当您构建查询时,只需连接这些新变量

 $firstAddition = ($num!=0) ? ','.$string : '';
 $secondAddition = ($num!=0) ? ','.$stringResult : '';
当您引导一个字符串并需要停止并做出决定时,如“这是零吗?然后执行此操作,现在继续”。您需要结束该字符串,如果需要,将一个字符串连接到该字符串中,然后将该字符串的其余部分连接到末尾。继续结束字符串并连接部分,直到完成

如果向字符串添加空值,则与添加空字符串相同-
'


结果字符串完全相同。而NULL!==“”(表示NULL和“”不相同,因为它们不是相同的类型),就结果字符串而言,它们是相同的。

我将条件放在设置查询的行上方

$string "mystring" . NULL . "morestring";  //result is "mystringmorestring"
$string "mystring" . "" . "morestring";  //result is "mystringmorestring"

如果要赋值,则不需要
echo
。echo使用for print to screen确保检查从$\u POST-var获得的参数,以避免SQL注入!如果在字符串结果中(!isset($set['Attribute']){$set['Attribute']='';},我什么都看不到,为什么?
$query="INSERT INTO subscriber (RandomCode,Email,CreateDate,UpdateDate";

if ($num!=0)
{
    $query .= ',' . $string; 
}

$query .= ") VALUES (?,?,?,?,CURDATE(),'',"

if ($num!=0)
{
    $query .= ','.$stringResult;
}

$query .= ")";
$string "mystring" . NULL . "morestring";  //result is "mystringmorestring"
$string "mystring" . "" . "morestring";  //result is "mystringmorestring"
<?php
 $extra='';
 if ($num!=0) $extra= ','.$string; 

 $extra2='';
 if ($num!=0) $extra=','.$stringResult; 

 $query="INSERT INTO subscriber (RandomCode,Email,CreateDate,UpdateDate '.$extra.' ) VALUES (?,?,?,?,CURDATE(),'','.$extra2.')";
?>