Maison  >  Questions et réponses  >  le corps du texte

Le code PHP ne s'exécutera pas - seul le contenu du fichier sera affiché

C'est la première fois que j'utilise HTML PHP et Ajax, alors soyez patient. La plupart du code provient d'exemples que j'ai trouvés en ligne. Cependant, je n'arrive pas à l'insérer dans la base de données. La fonction ajax entre dans la fonction success ; le résultat du succès est simplement affiché sous forme d'alerte dans le fichier php.

J'ai tout cela en local, alors je lance Chrome en tant que

chrome --allow-file-access-from-files file:///C:/filepath/index2.html

Je sais que ce n’est pas bon, mais je me débrouille.

index.html

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <title>Insert</title>
</head>
<body>
    <label>Name</label>
    <input type="text" id="name"> 
    <label>Email</label>
    <input type="text" id="email">
    <button type="submit" id="button">SAVE</button>    
    <script>
        $(document).ready(function(){
            $("#button").click(function(){
                var name=$("#name").val();
                var email=$("#email").val();
                $.ajax({
                    url:'insert.php',
                    method:'POST',
                    data:{
                        name:name,
                        email:email
                    },
                   success:function(data){
                       alert(data);
                   },
                   error:function(data){
                        alert(JSON.stringify(data));
                   }
                });
            });
        });
    </script>
</body>
</html>

Insérer .php

<?php
    $name=$_POST['name'];
    $email=$_POST['email'];
    $conn = new mysqli('Azure server URL', 'Username','Password', 'tableName');
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    $sql="INSERT INTO data ('id', 'name', 'email') VALUES (NULL, $name, $email)";
    if ($conn->query($sql) === TRUE) {
        echo "data inserted";
    }
    else 
    {
        echo "failed";
    }
?>

P粉493534105P粉493534105233 Il y a quelques jours438

répondre à tous(1)je répondrai

  • P粉517475670

    P粉5174756702024-02-04 16:25:34

    Vous avez dit

    ... non seulement c'est mauvais, mais c'est la cause du problème. Chrome + Votre système de fichiers ne peut pas exécuter de code PHP.

    Vous devez utiliser un serveur Web approprié avec un runtime PHP fonctionnel afin qu'il prenne en charge l'exécution de PHP en réponse aux requêtes HTTP. Utilisez XAMPP ou Laragon pour installer un environnement de développement PHP complet où PHP, Apache et MySQL/MariaDB sont disponibles et configurés afin que vous puissiez développer et tester correctement sur votre machine locale.

    Une autre option pour une solution rapide est le Serveur Web intégré PHP qui est disponible une fois PHP installé, bien que ses fonctionnalités soient plus limitées et qu'il ne ressemble pas beaucoup à un environnement de déploiement réel, évidemment si vous aussi besoin de composants tels qu'une base de données, etc. Vous devez vous préparer pour en parler séparément.

    répondre
    0
  • Annulerrépondre