Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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 使用ajax调用从php服务器发送图像_Javascript_Php_Ajax - Fatal编程技术网

Javascript 使用ajax调用从php服务器发送图像

Javascript 使用ajax调用从php服务器发送图像,javascript,php,ajax,Javascript,Php,Ajax,我尝试做的只是搜索一个文件并从服务器显示一张图片。HTML有一个简单的搜索栏,允许您键入搜索词。JavaScript使用ajax请求调用PHP文件,PHP在服务器上找到图像并将其发送回显示 现在发生的事情是图像没有显示,我得到一个图标,指示一些无效的图像。ajax调用似乎正在工作,但我认为我返回的数据不正确。我一直在寻找它,但每个人似乎对如何做有不同的意见,这是一种困惑 HTML PHP 建议: 请尝试以下链接: 使用文件获取内容,它将在浏览器上显示图像 $image = "images/".

我尝试做的只是搜索一个文件并从服务器显示一张图片。HTML有一个简单的搜索栏,允许您键入搜索词。JavaScript使用ajax请求调用PHP文件,PHP在服务器上找到图像并将其发送回显示

现在发生的事情是图像没有显示,我得到一个图标,指示一些无效的图像。ajax调用似乎正在工作,但我认为我返回的数据不正确。我一直在寻找它,但每个人似乎对如何做有不同的意见,这是一种困惑

HTML

PHP

建议:

  • 请尝试以下链接:

  • 使用文件获取内容,它将在浏览器上显示图像

    $image = "images/".$searchterm.".jpeg";
    echo '<img src="data:image/jpeg;base64,'.base64_encode(file_get_contents($image)).'">';
    
    $image=“images/”$searchterm..jpeg”;
    回声';
    
    请更改对象中用于.ajax()方法调用的url属性。search.php的路径不正确

    $.ajax({
        url: '/search.php',
    
    转到:

    $.ajax({
        url: './search.php',
    

    您是否已将其登录到控制台或发出警报以检查值。请尝试更改。使用.html追加,但首先检查PHP文件的预览。我已登录,并且我在图像标记中获得了类似于编码图像的内容:尝试下面的建议。注意使用了
    mime\u content\u type()
    。还要注意的是,“aW1hZ2VzL2hpdG9taV90YW5ha2FqcGVn‌​" 作为一个合法的jpeg文件,它看起来非常短:)我强烈建议您使用诸如Fiddler、FF/Firebug和/或Chrome Developer Tools之类的工具查看HTTP请求/响应。为了确保您确实发送了您认为要发送的内容。IMHO…@paulsm4是的,您是对的,现在要长得多,这更有意义。然而,我的页面仍然没有显示图像。我尝试了这个,我从PHP文件返回了一个很长的返回,我假设它是我请求的图像文件。但是,HTML没有显示任何内容。问:Firebug向您显示了什么?问:如果直接浏览到图像,会发生什么(httpd://myserver/images/myimage.jpeg),不带PHP?$image=“图像/“$searchterm.”jpeg;转到$image=“images/”$searchterm。“.jpeg”;请编辑更多信息。不鼓励只编写代码和“试试这个”答案,因为它们不包含可搜索的内容,也不解释为什么有人应该“试试这个”。
    <?php
    if(isset($_POST['search'])) {
        $searchterm = $_POST['search'];
        $image = "images/".$searchterm."jpeg";
        $imageData = base64_encode(file_get_contents($image));
        $src = 'data: '.mime_content_type($image).';base64,'.$imageData;
        echo '<img src="', $src, '">';
        ...
    
    $image = "images/".$searchterm.".jpeg";
    echo '<img src="data:image/jpeg;base64,'.base64_encode(file_get_contents($image)).'">';
    
    $.ajax({
        url: '/search.php',
    
    $.ajax({
        url: './search.php',