Php 我可以在sql查询之间回显一些内容吗? $query=“插入订户(随机码、电子邮件、CreateDate、UpdateDate)值(?,,,,?,CURDATE(),”)”; echo$query;
如果我在sql语句中添加条件语句,它将不会检查或触发php函数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
$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.')";
?>