Heim  >  Fragen und Antworten  >  Hauptteil

PHP-Code wird nicht ausgeführt – es wird nur der Inhalt der Datei angezeigt

Dies ist das erste Mal, dass ich HTML PHP und Ajax verwende, also haben Sie bitte etwas Geduld. Der größte Teil des Codes stammt aus Beispielen, die ich online gefunden habe. Ich kann es jedoch nicht tatsächlich in die Datenbank einfügen. Die Ajax-Funktion geht in die Erfolgsfunktion ein; die Erfolgsausgabe wird lediglich als Warnung in der PHP-Datei angezeigt.

Ich habe das alles lokal, also starte ich Chrome als

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

Ich weiß, dass es nicht gut ist, aber ich komme zurecht.

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>

.php einfügen

<?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粉493534105282 Tage vor469

Antworte allen(1)Ich werde antworten

  • P粉517475670

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

    你说

    ...这不仅不好,而且是造成问题的原因。 Chrome + 您的文件系统无法执行 PHP 代码。

    您需要使用具有可用 PHP 运行时的适当 Web 服务器,以便它支持执行 PHP 来响应 HTTP 请求。使用 XAMPPLaragon 安装功能齐全的 PHP 开发环境,其中 PHP、Apache 和 MySQL/MariaDB 可用且已配置,因此您可以在本地计算机上正确开发和测试。

    快速修复的另一个选项是 PHP 内置网络服务器 一旦你安装了 PHP 就可以使用,虽然它的功能比较有限,但它与真实的部署环境不太相似,显然如果你也需要数据库等组件,你需要设置你自己单独说一下。

    Antwort
    0
  • StornierenAntwort