Jquery vs PHP - 将图像加载到div中

时间:2010-09-13 19:49:20

标签: php jquery

我正在寻找一个php脚本服务器端,它在客户端的div中加载图像。

第一枪: ajax.php

if((isset($_POST['id'])) && ($_POST['id']=="loadphoto") && (ctype_digit($_POST['idp']))) {
    $query=mysql_query("SELECT articleid, photoid FROM articles_photos WHERE id='".$_POST['idp']."'", $mydb);
    if(mysql_num_rows($query)!=0){
        while($row=mysql_fetch_array($query, MYSQL_NUM)) {
            $path="./articles/photos/".$row[0]."/".$row[1];
        }

        echo $path;
    }
}

myjs.js

function loadPhoto(mexid) {
    $.ajax({
        type: 'POST',
        cache: false,
        url: './auth/ajax.php',
        data: 'idp='+escape(mexid)+'&id=loadphoto',
        success: function(msg) {
            $('.articleviewphoto1').find("img").each(function(){
                $(this).removeClass().addClass('photoarts');
            });

            $('#'+mexid).removeClass().addClass('photoartsb');
            $('#visualizator').html('<img src="'+msg+'" class="photoartb" />');
        }
    });
    return false;
}

2 个答案:

答案 0 :(得分:0)

我假设图像已存在于某处并且未在动态生成。在PHP脚本中,您可以使用$_POST['idp']$_POST['id']访问变量。执行您需要的任何处理,然后只需echo URL。 javascript中的变量msg将是PHP脚本的所有echo。然后,你可以这样做:

$('#visualizator').html('<img src="' + msg + '" />');

答案 1 :(得分:0)

您是否希望在PHP文件中托管可能的图像列表,并根据您发送的ID加载不同的图像?如果是这样,您可以设置:

$Img = $_POST['idp'];

并使用switch语句传回图像文件路径:

switch ($Img){
  case (some_value):
      echo 'images/some_file.jpg';
      break;

  case (another_value):
      echo 'images/another_file.jpg';
      break;

}

然后将文件路径放在标记中并将其加载到$('#visualizator').html();

我是否至少按照你想要的方式走上正轨?如果是这样,我可以稍微补充一下答案。