【问题标题】:Passing MYSQL echod image ID through AJAX通过 AJAX 传递 MYSQL 回显图像 ID
【发布时间】:2013-10-05 21:20:31
【问题描述】:

有人可以为我指出正确的教程方向吗?我一直在寻找将 MySQL 查询答案传递到另一个 url 的 ajax 教程。

我正在尝试创建一个数据库,其中列出了 EP 信息、曲目名称、艺术家姓名之类的东西。但重要的是我在数据库中作为 VARCHAR url 存储为“picture_url”的 EP 艺术作品。

我希望将图片全部打印到一个<div> 中,以便在单击它们后将EP 信息以及更大的图像加载到<div id= "epinfo">

我所做的是将图像 ID 设置为数据库自动递增 releases_id。这样我就可以创建我的 SQL:

SELECT * FROM releases WHERE releases_id = //image id

我已尝试将其转换为通过 ajax 发送的变量,但我似乎无法放置该变量,如果它在 $j 之前它将不起作用,因为 $j 是变量的一部分。将其放置在中断回声功能之后。我说$j 不是全局变量对吗?如果是这样,这可能是我尝试更改但失败的问题吗?

他们的教程是不是对这种 ajax 请求更具体一点?

我是 PHP 和 Ajax 编程的新手,因此我们将不胜感激。

这是我的 php 代码:

<div id="epcovers">
<?php
require_once 'arcko_admin.php';
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if(!$db_server) die("unable to connect to mysql:" . mysql_error());

mysql_select_db($db_database)
    or die("Unable to select database: " . mysql_error());
$query = "SELECT * FROM releases";
$result = mysql_query($query);

if(!$result) die ("Database access failed: " .mysql_error());

$rows = mysql_num_rows($result);

for($j = 0 ; $j < $rows ; ++$j)
{
    echo '<img src="' . mysql_result($result,$j,'picture_url') . '" class= "ep" id= "' .     mysql_result($result,$j,'release_id'). ' " width= "200" height= "200"/>';
}

mysql_close($db_server);

?>
    <div id="epinfo">
 <?php
echo //track title, artist information, etc.


?>
    </div>
</div>

【问题讨论】:

  • 我在这段代码中没有看到任何 ajax 调用...或者这是你的 php 后端?您也可以考虑使用 MySQLi 或 PDO 进行数据库查询。

标签: php jquery mysql ajax


【解决方案1】:

考虑使用mysql_fetch_assoc() 而不是mysql_result()

$query = "SELECT * FROM releases";
$result = mysql_query($query);

if(!$result) die ("Database access failed: " .mysql_error());

while ($row = mysql_fetch_assoc($result)) {
   echo '<img src="' . $row['picture_url'] . '" class="ep" id="' . $rom['release_id'] . '" width= "200" height= "200"/>';
}

mysql_close($db_server);

重要

既然您是从 PHP 开始的,请阅读: Why shouldn't I use mysql_* functions in PHP?

【讨论】:

  • 谢谢各位,语言新手,刚刚看到了改变我的代码的令人信服的论据。我将不得不考虑重新编写代码,但同时这对MySQL_fetch_assoc($result) 有很大帮助。他们的 ajax 教程是否有助于发送 $row['releases_id']
猜你喜欢
  • 2012-01-22
  • 2014-10-19
  • 2019-06-18
  • 1970-01-01
  • 1970-01-01
  • 2019-05-13
  • 2012-06-06
  • 2015-06-16
  • 1970-01-01
相关资源
最近更新 更多