如何在javascript中使用php从db获得的数据?
我在数据库中存储了指向图像的链接,链接是指向硬盘的,而不是http类型的链接。我设法用php获取所有数据,我想显示JavaScript旋转木马中链接的所有照片,但我不知道如何在JavaScript中使用php获取的数据。我使用php代码获取数据:如何在javascript中使用php从db获得的数据?,javascript,php,Javascript,Php,我在数据库中存储了指向图像的链接,链接是指向硬盘的,而不是http类型的链接。我设法用php获取所有数据,我想显示JavaScript旋转木马中链接的所有照片,但我不知道如何在JavaScript中使用php获取的数据。我使用php代码获取数据: mysql_connect("localhost","root",""); mysql_select_db("TEMP"); $sql = mysql_query("SELECT * FROM tv ORDER BY id ASC");
mysql_connect("localhost","root","");
mysql_select_db("TEMP");
$sql = mysql_query("SELECT * FROM tv ORDER BY id ASC");
$id = 'id';
$path = 'path';
while($rows = mysql_fetch_assoc($sql)){
echo 'Adresas: ' . $rows[$path] . '</br>';
}
mysql_-connect(“localhost”、“root”和“”);
mysql_select_db(“TEMP”);
$sql=mysql_查询(“按id ASC从电视订单中选择*);
$id='id';
$path='path';
while($rows=mysql\u fetch\u assoc($sql)){
回显“地址:”.$rows[$path]。;
}
我有一个JavaScript旋转木马,如下所示:
<div class="w3-content w3-section" style="max-width:500px">
<img class="mySlides" src="images/Chrysanthemum.jpg" style="width:100%">
<img class="mySlides" src="images/Desert.jpg" style="width:100%">
<img class="mySlides" src="images/Hydrangeas.jpg" style="width:100%">
<img class="mySlides" src="images/Jellyfish.jpg" style="width:100%">
<img class="mySlides" src="images/Koala.jpg" style="width:100%">
</div>
<script>
var myIndex = 0;
carousel();
function carousel() {
var i;
var x = document.getElementsByClassName("mySlides");
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
myIndex++;
if (myIndex > x.length) {myIndex = 1}
x[myIndex-1].style.display = "block";
setTimeout(carousel, 5000); // Change image every 2 seconds
}
</script>
var-myIndex=0;
转盘();
函数旋转木马(){
var i;
var x=document.getElementsByClassName(“mySlides”);
对于(i=0;ix.length){myIndex=1}
x[myIndex-1].style.display=“block”;
setTimeout(carousel,5000);//每2秒更改一次图像
}
正如您所看到的,它使用了来自div的硬编码图像,而我希望使用从数据库中获得的链接。我该怎么做呢?您可以根据需要打开和关闭php标记。关闭将输出数据,就像它是html一样,打开将以php的形式执行代码。类似的内容将为您填充列表。在这种情况下,不需要为javascript提供php数据。相反,您需要通过php输出html
<div class="w3-content w3-section" style="max-width:500px">
<?php
$rows = getRowsFromDB();
foreach($rows as $row)
{
?><img class="mySlides" src="<?php echo $row[$path];?>" style="width:100%"><?php
}
?>
</div>
“style=“width:100%”
下面的代码可能对您有所帮助。
请在$row变量中输入u r列名
<?php
while($rows = mysql_fetch_assoc($sql)){
?>
<img class="mySlides" src="images/<?php echo $rows['get_a_column_name'];?>" style="width:100%">
<?php
}
?>
“style=“width:100%”
首先,如果您的HTML文档已通过http://协议加载,浏览器将不会通过file://协议加载任何内容。原因是Sequerity(不确定是否允许任何网页读取本地磁盘内容,对吗?)
当浏览器请求您的页面时,PHP将在服务器端执行,并生成浏览器得到的内容作为响应。此内容也可能包含javascript,并且在收到响应时将在浏览器中执行。我认为,您需要的最简单的PHP页面如下所示:
<?php
// we'll store the list here
$urls = [];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Execute the query
$result = $conn->query("SELECT path FROM tv ORDER BY id ASC");
// Fetch all selected rows one by one
while($row = $result->fetch_assoc()) {
$urls[] = $row["path"];
}
$conn->close();
?>
<div class="w3-content w3-section" style="max-width:500px">
<?php foreach ($urls as $url): ?>
<img class="mySlides" src="<?=$url?>" style="width:100%">
<?php endforeach; ?>
</div>
。不要使用不安全且不推荐使用的mysql.*
函数。改用Mysqli或PDO。当我尝试使用它时,我遇到了一些错误。关于否决票,我不知道,很明显,这个问题本身对这么多程序员来说是不好的,所以它被否决了too@darklup,答案是正确的。如果您希望复制粘贴解决方案按原样工作,请使用短语“我不会试图理解您的答案,我只会复制您的代码片段并将其粘贴到我的代码中。”更新您的问题。当然,您会得到一个错误,因为我确定您没有实现getRowsFromDB()
,对吗?正是这样。不是我不想理解,而是我不想理解。我真的不习惯php和js,所以我几乎不知道它是做什么的。我想它给了我一个类“mySlides”,让我从db得到的一切,所以它应该在我的旋转木马中工作?我从来没有说过你的答案是错误的,如果我不知道怎么做,我就无法检查它是否真的是正确的。@darklup好吧,每个人都有一个起点;)记住在你的头脑中要把客户机和服务器分开。PHP在服务器上运行。HTML/CSS/JS等在客户端上“运行”。PHP生成内容(任何内容,不仅仅是HTML),wire另一端的浏览器获取并解释。。。幸运的是,我不是来为人们编写应用程序的,我给出了一个示例,演示了如何使用php输出html代码,这正是OP遇到的问题。DB代码很琐碎,如果这就是他遇到的问题,那就另外问一个问题;分手并给我带来了一些错误,所以我尝试使用$URL=“”;相反,它是有效的。正如我在其他评论中所说,我对这一点非常陌生,几乎不知道从哪里开始,但当我得到代码使用时,我真的会尽我最大的努力来通读并理解它。谢谢你的帮助。哦,顺便说一句,我认为mysqli比mysql更安全?我在其他评论中看到有人说我应该使用它,但没有提到如何使用它,我也非常感谢您提供的这部分知识
是一种简短的语法,如果您的PHP版本早于5.4,则会失败。您可以通过完整语法创建数组,而不是$url=array()代码>有关mysql API的更多信息,请参阅手册,您在代码片段中使用的扩展因以下几个原因被弃用。阅读手册以获取有关如何使用mysql推荐API的更多信息我的示例使用mysqli。您可能想阅读更多关于mysqli
和mysqli\u result
类的信息,以获得如何在php中使用mysql的灵感。