javascript - L'envoi d'Ajax pour renvoyer des données à l'aide de PHP échoue
给我你的怀抱
给我你的怀抱 2017-06-21 10:10:23
0
5
877

1. Je souhaite envoyer du ajax et utiliser php pour renvoyer des données json, mais même la chaîne "Hellow world" ne peut pas être renvoyée

2. Téléchargez le code

code js

<script src="./jquery.js"></script>
<script>
$.ajax({
    type:'get',
    url:'./data.php',

    beforeSend:function(){
        console.log("请求发起前")
    },
    success:function(result){
        console.log(result);
    },
    complete:function(){
        console.log('请求完成');
    }
});
</script>

code php

<?php
header("Content-Type:text/html;charset=UTF-8");

echo "Hello,World!!!";
?>

Message d'erreur :
Envoyer la barre d'adresse : http://heima.com/Coder/%E6%B5...

Résultats d'impression :
Avant le lancement de la demande

<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: Unknown: failed to open stream: No such file or directory in Unknown on line <i>0</i></th></tr>
</table></font>
<br />
<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Fatal error: Unknown: Failed opening required 'F:/heima/Coder/测试场/Ajax/data.php' (include_path='.;C:\php\pear') in Unknown on line <i>0</i></th></tr>
</table></font>
 请求完成

3. Je ne suis pas sûr de ce qui ne va pas. S'il vous plaît, aidez-moi à jeter un œil. Si hello world peut être renvoyé, les données json suivantes peuvent-elles être renvoyées ?

php (json)

<?php
header('Content-type: text/json');
$fruits = array (
    "fruits"  => array("a" => "orange", "b" => "banana", "c" => "apple"),
    "numbers" => array(1, 2, 3, 4, 5, 6),
    "holes"   => array("first", 5 => "second", "third")
);
echo json_encode($fruits);
?>
给我你的怀抱
给我你的怀抱

répondre à tous(5)
Peter_Zhu

D'après le rapport d'erreur, il semble que le chemin d'accès (fichier) n'existe pas. La réponse ci-dessus est très claire.

Vous pouvez le vérifier comme ceci, en supposant que votre fichier HTML (doit contenir votre code js) se trouve dans le $_PATH/test.html,php为data.phpfichier

1. Vérifiez si le répertoire actuel existe $_PATH/data.php这个文件
2、手动访问本地环境下(如:http://localhost/data.php),就知道是否正常了(如果报错那就已经找到问题了)
3、不建议ajax的url:"./data.php"这么写,直接 url:"data.php" C'est tout
4. Il n'est pas recommandé d'utiliser la dénomination chinoise pour les noms de dossiers.

扔个三星炸死你

Message d'erreur
Aucun fichier ou répertoire de ce type dans Inconnu à la ligne 0 No such file or directory in Unknown on line 0
Fatal error: Unknown: Failed opening required 'F:/heima/Coder/测试场/Ajax/data.phpErreur fatale : Inconnu : Échec de l'ouverture requis 'F:/heima/Coder/test field/Ajax/data.php

Le chemin de votre fichier est erroné.

小葫芦

Première question

Votre code HTML renvoie la même chose, qui est en fait le message d'erreur de PHP (message d'erreur formaté) :
Si vous accédez directement à la page, vous pouvez intuitivement voir l'erreur suivante :

C'est parce que vous include的文件'F:/heima/Coder/测试场/Ajax/data.php'N'existe pas , veuillez d'abord vérifier si ce fichier existe réellement sur votre serveur PHP. Il est également recommandé de donner la structure du fichier et si le HTML est ouvert localement ou monté sur le serveur et ouvert à partir du protocole HTTP, afin de faciliter une analyse plus détaillée et de donner des suggestions plus précises.

Deuxième question

Ce code semble correct. Si l'AJAX précédent peut s'exécuter, celui-ci devrait également fonctionner.

曾经蜡笔没有小新

J'ai jeté un œil au contenu de votre en-tête, qui est les informations d'état renvoyées par le navigateur en F12. Vous devriez le savoir. Il contient une URL de demande, ce qui signifie probablement que votre adresse de demande est erronée. C'est juste ce tas de trucs tronqués qui ne devraient pas apparaître. (Dans ce cas, j'ai modifié la méthode de requête ou le jquery importé. Je ne m'en souviens pas clairement. Vous pouvez essayer les deux.) J'ai pris une capture d'écran et vous pouvez y jeter un oeil

. . . .
J'ai également rencontré cette raison, mais il me semble que j'utilise jquery (je ne m'en souviens probablement pas clairement). Une autre raison est que le format de votre ajax est incorrect. Je ne publierai pas le format spécifique. Vous pouvez trouver un format ajax utilisable et l'envoyer. Les formats post et get doivent correspondre. Aussi, c'est la première fois que je vois le type : se mettre au premier plan. Ce n’est pas que ce soit mal, c’est juste gênant. C'est tout, j'espère que ça vous aidera

扔个三星炸死你

Il s'agit en effet d'un problème avec l'erreur de chemin php. La raison est qu'il y a une erreur en chinois sur le chemin du fichier lors de l'analyse de l'adresse php. Maintenant, c'est ok et accessible normalement. Merci à tous.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal