Le code PHP ne s'exécutera pas - seul le contenu du fichier sera affiché
P粉493534105
P粉493534105 2024-02-03 22:04:44
0
1
478

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粉493534105
P粉493534105

répondre à tous(1)
P粉517475670

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.

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