2017-03-04 17 views
-3

データベース名は "db"です。テーブルは 'tbl_pro'です。フィールドは "msid" "subid" "pid"と "pname"です。PHPはURLのページからレコードを取得します

URLから「msid」でデータを取得しようとすると、新しいページで正常に動作しています。しかし、 "pname"を通して私はそれを得ることができません。他のページの上の

<? 
      $QryP=mysql_query("Select * from tbl_pro where Pname='test' order by Rank desc") or die("Error loading Products"); 
      if(mysql_num_rows($QryP)>0) { 
      while($rs=mysql_fetch_array($QryP)){ 
        ?> 
       <div class="col-md-3 col-sm-4 "> 
        <div class="w-box product"> 
         <figure> 
          <img alt="" src="upload/spic/<?=$rs["Spic"]?>" class="img-responsive img-center"> 
         </figure> 
         <h2><a href="test.php?Pname=<?=$rs["Pname"]?>"><?=$rs["Pname"]?></a></h2> 
            <p> 

:ここに私のコードは

1ページのコードです。

2ページコード:

<? 
     $QryP=mysql_query("Select * from tbl_pro where Pname=".$_REQUEST["Pname"]." AND Display='y'") or die("Error loading Products"); 
      if(mysql_num_rows($QryP)>0) { 
      while($rs=mysql_fetch_array($QryP)){ 

    ?> 

私が代わりに "PNAME" その作業罰金の "MSID" を使用している場合

+0

MySQLでは列名で大文字と小文字が区別されますか? (私はそれを自分で使用しないので、私は知らない)。 - 「Pname」ではなく「Pname」でなければなりませんか? –

+1

値の前後に一重引用符がありません。 '... Pname = '"。$ _REQUEST ["Pname"]。 "' ...' die()では実際のエラーを出力します。 – Shadow

+0

また、mysql_ *は非推奨です。 mysqli_ *を見てください –

答えて

0

その優れた(ISSET($ _ REQUEST [ 'PNAME'])){$ PNAME = $ _ REQUEST [ 'PNAME']場合は、クエリ

内の文字列を使用していたときのようなオペレータで行くことに。 }他{$ PNAME = '';}

(!PNAME =もし ''){

$ QryP =するmysql_query( "どこPNAMEのようなtbl_pro SELECT * FROM「。。%" $ PNAME "% ' AND Display = 'y' ")または死ぬ(" Error loading Products ");

関連する問題