注意:未定义的变量:`starting_string`

时间:2016-06-02 16:29:22

标签: php mysql

我正在运行PHP脚本,并且不断收到错误:

问题1

 204   if(isset($campaign)){
 205      if(strlen($search)>0){
 206         $campaign_sql_string="and campaign_id='$campaign'";
 207    } else {
 208       $campaign_sql_string="where campaign_id='$campaign'";
 209    }
 210    }   else {
 211    $campaign_sql_string="";
 212    }
 213    if(!empty($starting) > 0 ){
 214    $starting2=$starting-1;
 215    $starting_string="$starting2,";
 216    }
 217    $sql_count="select count(*) as count from {$_SESSION['table']} $search $campaign_sql_string";
 218    $sql="select * from {$_SESSION['table']} $search $campaign_sql_string order by $column desc limit $starting_string {$_SESSION['limit']}";

错误:

  

注意:未定义的变量:LINE中的starting_string PAGE:218

<小时/> 问题2

 13     $conn = mysqli_connect($servername, $username, $password, $dbname);
 14     if (!$conn) {
 15     die("Connection failed: " . mysqli_connect_error());
 16     }
 17     $sql = "SELECT * FROM ayarlar";
 18       $result = mysqli_query($conn, $sql);
 19       if ($result->num_rows > 0) {
 20         while($row = $result->fetch_assoc()) {
 24         $mevcut = $row["AppVersiyon"];
 22         }
 23       }

错误:

  

警告:mysqli_query():无法在18中获取mysqli

  

注意:尝试在19

中获取非对象的属性

<小时/> 问题3

if( (isset($_REQUEST['starting']) && $_REQUEST['starting']<=0) || $ignore_starting) {

错误:

  

注意:未定义的变量:ignore_starting

这些错误意味着什么?
我需要做些什么来修复它们?

2 个答案:

答案 0 :(得分:1)

问题1和3中的Undefined variable通知只是意味着您在没有先在任何地方定义其值的情况下尝试使用变量。这与您发布的3代码一致。您应该在代码的其余部分进行搜索,以查找使用$ignore_starting的位置,以便排查未按预期设置的原因。

对于1,if(!empty($starting) > 0 )无效,或至少不干净,因为你隐式尝试将false转换为0. empty返回true / false,所以它应该只是{{1然后将值euqal设置为空字符串if(!empty($starting))以避免稍后通知。此外,由于它是一个数字,我喜欢检查if it's numeric,然后检查是否大于零,就像你试过的那样。

''

2的问题是您的SQL查询无效。 213 if( !empty($starting) && is_numeric($starting) && ($starting > 0) ){ 214 $starting2=$starting-1; 215 $starting_string="$starting2,"; 216 } else $starting_string=""; 表示您尝试从警告Trying to get property of non-object

指示的FALSE错误设置的$result = mysqli_query($conn, $sql);值中获取结果

为了获得有关查询的更多有用信息,您应该检查特定错误:

Warning: mysqli_query(): Couldn't fetch mysqli

答案 1 :(得分:0)

  1. 注意:未定义的变量意味着当php尝试执行时,您的变量未定义。

  2. 注意:试图在19中获得非对象的属性 - 这是因为第18行的问题 - 不确定为什么它在第18行抱怨

  3. ignore_starting-再次收到通知,因为在此行中调用它之前可能没有声明任何值。