2016-04-24 85 views
0

所以這是我的代碼:如何把PHP變量在SQL查詢

<nav class="navbar navbar-inverse"> 
    <div class="container-fluid"> 
     <div class="navbar-header"> 
      <a class="navbar-brand" href="#">WebSiteName</a> 
     </div> 

     <ul class="nav navbar-nav"> 
      <li class="active"><a href="#">Home</a></li> 

      <?php 
       $dbconn= new PDO('sqlite:negozio.db'); 


      $sqlcate = "SELECT * FROM categoria"; 
      foreach($dbconn->query($sqlcate) as $row) { ?> 
      <li class="dropdown"> 
      <a class="dropdown-toggle" data-toggle="dropdown" href="#"><?php echo $row['des_categoria']; ?> <span class="caret"></span></a> 

      <ul class="dropdown-menu"> 
       <?php 
       $sqltipocate = "SELECT tipo.des_tipo FROM tipo, categoria, tipo_cate WHERE tipo_cate.id_cate = categoria.id_categoria AND tipo_cate.id_tipo = tipo.id_tipo AND tipo_cate.id_categoria = " . $row['id_categoria'] . " "" "; 

       foreach($dbconn->query($sqltipocate) as $row1) { ?> 

       <li><a href="#"><?php echo $row1['des_tipo']; ?></a></li> 
      <?php } ?> 
      </ul> 
     </li> 
     <?php } ?> 

     </ul> 
    </div> 
</nav> 

一切工作正常,直到$sqltipocate布拉布拉......

此錯誤總是出現:

語法錯誤,意外T_CONSTANT_ENCAPSED_STRING

有人可以幫我?

+0

@Anant你爲什麼不加入這個作爲一個答案? – webeno

+0

@安南,但其他人可能會看到它,它可以幫助他們,所以他們可以upvote,你會得到更多的聲譽,或者我認爲這不再是10K代表的動機很多? – webeno

+0

@安娜,很明顯,這就是我所做的(沒有意識到它已經在那裏作爲你的評論),而且我什麼都得不到,但我得到了它,所以我刪除了它......好吧,讓我繼續... – webeno

回答

0

這是以前答案中所考慮的級聯問題。我可以添加一些東西可能會讓你的生活更輕鬆這是sprintf

您的SQL查詢字符串將是sprintfformat參數如下:

  $sqltipocate = sprintf("SELECT tipo.des_tipo FROM tipo, categoria, tipo_cate WHERE tipo_cate.id_cate = categoria.id_categoria AND tipo_cate.id_tipo = tipo.id_tipo AND tipo_cate.id_categoria = %d", $row['id_categoria']); 
0

使用大括號。

實施例:

$id = 1; 
$sql = "SELECT * FROM something WHERE id = {$id}"; 

echo $sql; 
//SELECT * FROM something WHERE id = 1 

鏈接到代碼:http://codepad.org/V9QasGHH

0

商店中的$行[ 'id_categoria'〕中可變像

$ ID = $行[ 'id_categoria'];

然後把$ ID像查詢:

$ sqltipocate =「SELECT tipo.des_tipo FROM TIPO,categoria,tipo_cate WHERE tipo_cate.id_cate = categoria.id_categoria AND tipo_cate.id_tipo = tipo.id_tipo和tipo_cate.id_categoria ='「。$ id。」'「;

看到這個tipo_cate.id_categoria = ' 「的$ id」'