单击按钮时超出php

时间:2015-12-09 17:48:29

标签: javascript php jquery mysql ajax

所以我建立了一个人们可以上传图片的数据库。图片链接到与某个类别相关联的地方。

我正在尝试创建一个显示所有图像的图库页面,然后显示可用的类别。当您点击某个类别时,它意味着显示该类别的所有图片。

我的数据库中也有我的类别,我正在使用php来回应:

var azure = require('azure-storage');

当点击一个按钮时,我需要它来运行这个php:

<?php
include('includes/connectdb.php');

/* Selects id and name from the table 'category' */
$query = "SELECT id, name FROM category";
$result_category = mysqli_query($dbc,$query);
?>

<h1>Category</h1>
  <!-- iterate through the WHILE LOOP  -->
  <?php while($row = mysqli_fetch_array($result_category)): ?>
    <!-- Echo out values {id} and {name}   -->
    <button name="category[]" value=" <?php echo $row['id']; ?> "><?php echo $row['name'] . '<br />'; ?></button>
  <?php endwhile; ?>

我发现它应该可以使用ajax,所以我将以下内容添加到我的ajax.php文件中:

<?php

if(isset($_POST['category[]'])){

displayimage();

function displayimage()
            {
$con=mysql_connect("localhost","root","");
mysql_select_db("ssdb",$con);
$qry="SELECT pictures.name, pictures.image, pictures.place_id
FROM pictures
INNER JOIN sted
ON pictures.place_id = sted.id
INNER JOIN placecategory
ON sted.id = placecategory.place_id
INNER JOIN category
ON placecategory.category_id = category.id
WHERE placecategory.category_id = $row['id']";

   $result=mysql_query($qry,$con);
   while($row = mysql_fetch_array($result))
      {
        //var_dump($row); 
        echo '<img height="300" width="300" src="data:image;base64,'.$row["image"].' "> ';
        echo '<p style="display:inline-block">'.$row["name"].' </p> ';
      }
      mysql_close($con); 
    }
  }
  ?>

这是我的gallery.php文件,我正在显示图片和类别。

<?php
if (isset($_POST['action'])) {
    switch ($_POST['action']) {
        case 'category':
            category();
            break;
    }
}
function category() {

displayimage();

      function displayimage()
            {
      $con=mysql_connect("localhost","root","");
      mysql_select_db("ssdb",$con);
      $qry="SELECT pictures.name, pictures.image, pictures.place_id
FROM pictures
INNER JOIN sted
ON pictures.place_id = sted.id
INNER JOIN placecategory
ON sted.id = placecategory.place_id
INNER JOIN category
ON placecategory.category_id = category.id
WHERE placecategory.category_id = $row['id']";

      $result=mysql_query($qry,$con);
      while($row = mysql_fetch_array($result))
      {
        //var_dump($row); 
        echo '<img height="300" width="300" src="data:image;base64,'.$row["image"].' "> ';
        echo '<p style="display:inline-block">'.$row["name"].' </p> ';
      }
      mysql_close($con); 
    }
    exit;
}
?>

最后我将我的按钮改为

<script>
$(document).ready(function(){
    $('.button').click(function(){
        var clickBtnValue = $(this).val();
        var ajaxurl = 'ajax.php',
        data =  {'action': clickBtnValue};
        $.post(ajaxurl, data, function (response) {
            // Response div goes here.
            alert("action performed successfully");
        });
    });
});
</script>

我正在链接到jquery库并且我已经测试了我需要运行的SQL语句,并且当我指定placecategory.category_id是什么时它可以工作。

0 个答案:

没有答案