Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果服务器上不存在图像url,请将url替换为其他url(多次)_Javascript_Html_Css - Fatal编程技术网

Javascript 如果服务器上不存在图像url,请将url替换为其他url(多次)

Javascript 如果服务器上不存在图像url,请将url替换为其他url(多次),javascript,html,css,Javascript,Html,Css,我为我的论坛系统制作了lastposter头像。 我想要的是:当用户化身img不存在时,多次更改文件类型。这样的例子;如果用户{userid}{u avatar.png不存在,请将url更改为user{user{u id}{u avatar.jpg,然后再次更改为user{userid}{u avatar.gif,等等。{user{u id}作为php变量出现,这无关紧要 您可以使用这样的函数 function image_exists(image_url){ var http =

我为我的论坛系统制作了lastposter头像。 我想要的是:当用户化身img不存在时,多次更改文件类型。这样的例子;如果用户{userid}{u avatar.png不存在,请将url更改为user{user{u id}{u avatar.jpg,然后再次更改为user{userid}{u avatar.gif,等等。{user{u id}作为php变量出现,这无关紧要


您可以使用这样的函数

function image_exists(image_url){

    var http = new XMLHttpRequest();

    http.open('HEAD', image_url, false);
    http.send();

    return http.status != 404;

}

您可以这样做:

Javascript:

var img_types = ['jpeg', 'gif', 'png'];
var avatar = '';
for(var i=0;i<img_types.length();i++) {
    avatar = new File("/path/to/avtar." + img_types[i]);

    // See if the file exists
    if(avatar.exists()){
        break;
    }
}
PHP:


你已经试过什么了?我用PlanJavaScript做的;一些化身可以有不同的文件类型,就像这样;如何处理此问题?@novruzrhmv您的意思是一个用户可以有多个图像?比如jpeg和gif?你想要这两个URL吗?不,我的意思是不同的用户可以有不同的文件类型和显示方式;user_1.jpg、user_2.png、user_3。gif@novruzrhmv这应该已经和这个代码一起工作了,不是吗?我不能适应这个我的代码,你能编辑答案吗?
<?php
    // put allowed image types in this array
    $img_types = ['jpeg', 'gif', 'png'];
    // avatar URL will be stored in here
    $avatar = '';
    // loop over the image_types array
    foreach($img_types as $img_type) {
        $avatar = '/path/to/user_{userid}_avatar.' . $img_type;
        // check if the files exists
        if(file_exists($avatar)) {
            // exit the foreach loop, because we found the image
            break;
        }
    }
?>