-1

私は2つのテーブルを持っていPostますCategory.

役職

   pid   title    result    content      cid   
   1    Option1    Opt      content1      2   
   2    Option2    Opt      content2      2   
   3    Option3    Opt      content3      3   

カテゴリー

   cid  cname   
   1     Cat 1    
   2     Cat 2    
   3     Cat 3   

これは私のinsert.phpです。

mysql_connect('localhost','root','');

mysql_select_db("database") or die("Unable to select database");

$title=$_POST['post_title'];
$result=$_POST['post_result'];
$content=$_POST['post_content'];
$sid=$_POST['cid'];
$date=$_POST['date'];

$insertquery="INSERT INTO review (post_title,post_result,post_content,cid,date)
          VALUES('$title','$result','$content',$sid,NOW())";


$result=mysql_query($insertquery);

if(! $result )
{
  die('Could not enter data: ' . mysql_error());
}
else {

        echo "Entered data successfully\n";
        header('Location:home.php');
    }    

これは、特定のカテゴリの投稿を表示する 私のcat.phpです。

$link = mysql_connect("localhost","root","");
mysql_select_db("database");



$query="SELECT * FROM category WHERE cid='$cid'";

 $result = mysql_query($query) or die("Query to get data failed with error:  ".mysql_error());

while($row = mysql_num_rows($result)) { 
echo    //details goes here

}    

ホームページの私のカテゴリーメニュー一覧です。

<ul>            
<li><a class="my-button" href="#">Cat 1</a></li>
<li><a class="my-button" href="#">Cat 2</a></li>
<li><a class="my-button" href="#">Cat 3</a></li>
</ul>    

これはジャバスクリプトです。

<script>
$(document).ready(function() {
$('body').on('click', '.my-button', function() {

   $("#display").load("cat.php");

   });
});
</script>    

すべてがデータベースに正しく挿入されています。しかし、onclickで特定のカテゴリの投稿を表示することができません。

私は完全なコードを与えました。私が欲しいのは、ホームページでCat 1またはCat 2またはCat 3をクリックすると、#displaydivで選択したカテゴリの投稿テーブルからすべてのデータを表示する必要があるということです。

次のようなエラーが表示されます。

cid は未定義の変数です

適切なコードを見つけるのを手伝ってください。

4

2 に答える 2

0

私はあなたが間違った道を進んでいると思います。cat.phpにデータを送信していないため、$cidは未定義です。カテゴリIDをload.phpに送信して、有効な結果を取得します。何かのようなもの

$("#display").load("cat.php",{cid: yourvalue});
于 2013-01-15T18:24:02.997 に答える
0

$cidこれは、クエリで使用されているスクリプトを見ると、どこにも定義されていないためです。少なくともエラーレポートを提供してくれたことに感謝します。次回は、表示されるエラー メッセージをよく読んで理解する必要があります。これにより、多くの場合、問題の内容が正確にわかります。

また、mysqli または PDO の学習についても検討する必要があります。はmysql_*推奨されておらず、今後は使用しないでください。また、サーバーの SQL インジェクションの脆弱性もあるため、その対策についてよくお読みください。

于 2013-01-15T18:16:14.730 に答える