将PHP选择转换为JavaScript数组进行操作
Turning PHP selection to JavaScript array for manipulation
我想将这些图像从服务器添加到JavaScript数组中,这样我就可以使用它们了。
下面的示例应该提醒文件夹中的图像数量。目前有两个图像在那里,这个脚本提醒我两次,说我有数组的长度是一。很明显,我想要一个警报说两个。
<?php
include("mysqlconnect.php");
$select_query = "SELECT `ImagesPath` FROM `offerstbl` ORDER by `ImagesId` DESC";
$sql = mysql_query($select_query) or die(mysql_error());
while($row = mysql_fetch_array($sql,MYSQL_BOTH)) {
?>
<script> var images = new Array("<?php echo $row["ImagesPath"]; ?>");
alert(images.length);
json_encode()
。你现在所做的就是杀死你编码的任何东西。我可以保证。(如果你不相信我,只需询问Stack Overflow上的任何人。(
它可以简单地这样做:
$data = array();
while($row = mysql_fetch_array($sql,MYSQL_BOTH)){
$data[] = $row['ImagesPath'];
}
看到我们如何将图像添加到上面的$data
阵列中吗?现在我们可以简单地在循环下添加这个:
$images = json_encode($data);
这会给你一个看起来像这样的东西:
{'path/to/image', 'path/to/another/image'}
我强烈建议你不要像现在这样做,但为了回答你的问题,你的最终代码应该是这样的:
<?php
//....all the query stuff etc...
$data = array();
while($row = mysql_fetch_array($sql,MYSQL_BOTH)){
$data[] = $row['ImagesPath'];
}
$images = json_encode($data);
?>
<script>var images = <?php echo $images; ?></script>
<?php
include("mysqlconnect.php");
$select_query = "SELECT `ImagesPath` FROM `offerstbl` ORDER by `ImagesId` DESC";
$sql = mysql_query($select_query) or die(mysql_error());
$rows = mysql_fetch_assoc($sql);
echo "<script> var images = array();"
for($i=0;$i<count($rows);$i++)
{
$current_image = $rows[0];
echo "images.push($current_image)";
}
?>
此代码将使用for循环将所有images_path推送到images数组中。它将为更多的图像刷新长代码,但工作正常。如果你不想刷新一个长js文件,那么告诉我,我也会这样做。
相关文章:
- 将数组对象传递到struts2中的操作类
- 响应应包含一个对象,但得到的却是GET操作的数组
- Var工作,但在使用数组执行相同操作时停止
- 使用查询将对象数组发布到asp.net-mvc控制器操作的正确方法是什么
- 使用纯JavaScript或Lodash的JSON数组操作
- JavaScript 数组操作,使任何索引作为变量来获取值
- 数组操作 java 脚本
- JavaScript 中的 Web 服务调用和 JSON 数组操作
- JavaScript 数组操作以删除奇数数组元素
- 不允许对链接函数的元素参数进行数组操作
- Javascript布尔数组操作
- 数组操作到新的数组对象中
- JSON对象创建和JSON数组操作
- Javascript不必要的压缩数组操作
- 对象数组的下划线数组操作
- Mongodb findone返回值-数组操作
- 字符串的用法[.]数组操作
- 最佳mongodb数组操作的性能
- Javascript数组操作——是否有更声明性的方法?
- 如何将.reduce函数生成的数组操作为单独的键/值对?(JavaScript)