Javascript 如何将数据发送到php服务器?
//会有意大利人的评论,因为我是意大利人// 我试图使用Ajax和PHP创建一个注册表单,但当我运行WebApp时,浏览器会向我发送一条错误消息:signup.js:22 POSThttp://localhost:8080/chatapp/php/signup.php 500(内部服务器错误) 我的signup.js文件代码是:Javascript 如何将数据发送到php服务器?,javascript,php,html,mysql,ajax,Javascript,Php,Html,Mysql,Ajax,//会有意大利人的评论,因为我是意大利人// 我试图使用Ajax和PHP创建一个注册表单,但当我运行WebApp时,浏览器会向我发送一条错误消息:signup.js:22 POSThttp://localhost:8080/chatapp/php/signup.php 500(内部服务器错误) 我的signup.js文件代码是: const form = document.querySelector(".signup form"), continueBtn = form.qu
const form = document.querySelector(".signup form"),
continueBtn = form.querySelector(".button input");
form.onsubmit = (e)=>{
e.preventDefault(); // Impedisce al form di essere inviato
}
continueBtn.onclick = ()=>{
// Inzio dell'Ajax ovvero il sistema di sviluppo di un app basato sullo scambio di dati tra l'utente e il server
let xhr = new XMLHttpRequest(); // Creazione dell'ogetto XML
xhr.open("POST", "php/signup.php", true);
xhr.onload = ()=>{
if(xhr.readyState === XMLHttpRequest.DONE){
if(xhr.status === 200){
let data = xhr.response;
console.log(data);
}
}
}
// Bisogna inviare i dati dei form all'php tramite Ajax
let formData = new FormData(); // Creazione di un nuovo oggetto formData
xhr.send(formData); // Invia i formData al php
}
这是signup.php文件:
<?php
include_once "config.php";
$nome = mysqli_real_escape_string($conn, $_POST['nome']);
$cognome = mysqli_real_escape_string($conn, $_POST['cognome']);
$email = mysqli_real_escape_string($conn, $_POST['email']);
$password = mysqli_real_escape_string($conn, $_POST['password']);
// $img = mysqli_real_escape_string($conn, $_POST['img']);
if(!empty($nome) && !empty($cognome) && !empty($email) && !empty($password)){
// Verifica se l'email è valida o no
if(filter_var($email, FILTER_VALIDATE_EMAIL)){ // Se l'email è valida
// Verificare se l'email è già presente nel Database o no
$sql = mysqli_query($conn, "SELECT email FROM users WHERE email = '{$email}'");
if(mysqli_num_rows($sql) > 0){ // Se l'email è già esistente
echo "$email - Già esiste un account con questa email";
}else{
// Verificare se l'utente ha caricato l'immagine o no
if(isset($_FILES['img'])){ // Se ha caricato l'immagine
$img_name = $_FILES['img']['name']; // Ottenere l'immagine caricata dall'utente
$img_type = $_FILES['img']['type']; // Ottenere il tipo di immagine caricata dall'utente
$tmp_img = $_FILES['img']['tmp_name']; // Questo nome temporanio per salvare/muoere i file nelle cartelle
}else{
echo "Per favore seleziona un Immagine"
}
}
}else{
echo "$email - Questa email non è valida";
}
}else{
echo "Tutti i campi devono essere riempiti";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>ChatApp</title>
<link rel="stylesheet" href="style.css">
<script src="https://kit.fontawesome.com/6e64c11f0a.js" crossorigin="anonymous"></script>
</head>
<body>
<div class="wrapper">
<section class="form signup">
<header>ChatApp by mk3301</header>
<form action="#" enctype="multipart/form-data">
<div class="error-txt">Questo è un messaggio di errore!</div>
<div class="name-details">
<div class="field input">
<label>Nome</label>
<input type="text" name="nome" placeholder="Nome" required>
</div>
<div class="field input">
<label>Cognome</label>
<input type="text" name="cognome" placeholder="Cognome" required>
</div>
</div>
<div class="field input">
<label>Email</label>
<input type="text" name="email" placeholder="Inserisci l'Email" required>
</div>
<div class="field input">
<label>Password</label>
<input type="password" name="password" placeholder="Inserisci la password" required>
<i class="fas fa-eye"></i>
</div>
<div class="field image">
<label>Immagine</label>
<input type="file" name="img" required>
</div>
<div class="field button">
<input type="submit" value="Registrati e Continua" formaction="#">
</div>
</form>
<div class="link">Hai già un Account? <a href="login.php">Entra ora</a></div>
</section>
</div>
<script src="js/pass-show-hide.js"></script>
<script src="js/signup.js"></script>
</body>
</html>
这是index.php文件:
<?php
include_once "config.php";
$nome = mysqli_real_escape_string($conn, $_POST['nome']);
$cognome = mysqli_real_escape_string($conn, $_POST['cognome']);
$email = mysqli_real_escape_string($conn, $_POST['email']);
$password = mysqli_real_escape_string($conn, $_POST['password']);
// $img = mysqli_real_escape_string($conn, $_POST['img']);
if(!empty($nome) && !empty($cognome) && !empty($email) && !empty($password)){
// Verifica se l'email è valida o no
if(filter_var($email, FILTER_VALIDATE_EMAIL)){ // Se l'email è valida
// Verificare se l'email è già presente nel Database o no
$sql = mysqli_query($conn, "SELECT email FROM users WHERE email = '{$email}'");
if(mysqli_num_rows($sql) > 0){ // Se l'email è già esistente
echo "$email - Già esiste un account con questa email";
}else{
// Verificare se l'utente ha caricato l'immagine o no
if(isset($_FILES['img'])){ // Se ha caricato l'immagine
$img_name = $_FILES['img']['name']; // Ottenere l'immagine caricata dall'utente
$img_type = $_FILES['img']['type']; // Ottenere il tipo di immagine caricata dall'utente
$tmp_img = $_FILES['img']['tmp_name']; // Questo nome temporanio per salvare/muoere i file nelle cartelle
}else{
echo "Per favore seleziona un Immagine"
}
}
}else{
echo "$email - Questa email non è valida";
}
}else{
echo "Tutti i campi devono essere riempiti";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>ChatApp</title>
<link rel="stylesheet" href="style.css">
<script src="https://kit.fontawesome.com/6e64c11f0a.js" crossorigin="anonymous"></script>
</head>
<body>
<div class="wrapper">
<section class="form signup">
<header>ChatApp by mk3301</header>
<form action="#" enctype="multipart/form-data">
<div class="error-txt">Questo è un messaggio di errore!</div>
<div class="name-details">
<div class="field input">
<label>Nome</label>
<input type="text" name="nome" placeholder="Nome" required>
</div>
<div class="field input">
<label>Cognome</label>
<input type="text" name="cognome" placeholder="Cognome" required>
</div>
</div>
<div class="field input">
<label>Email</label>
<input type="text" name="email" placeholder="Inserisci l'Email" required>
</div>
<div class="field input">
<label>Password</label>
<input type="password" name="password" placeholder="Inserisci la password" required>
<i class="fas fa-eye"></i>
</div>
<div class="field image">
<label>Immagine</label>
<input type="file" name="img" required>
</div>
<div class="field button">
<input type="submit" value="Registrati e Continua" formaction="#">
</div>
</form>
<div class="link">Hai già un Account? <a href="login.php">Entra ora</a></div>
</section>
</div>
<script src="js/pass-show-hide.js"></script>
<script src="js/signup.js"></script>
</body>
</html>
聊天应用
mk3301聊天应用程序
这是我的错误!
诺姆
同源的
电子邮件
密码
伊玛吉
海吉亚联合国账户?
第echo“Per-favore seleziona un-Immagine”行中缺少分号。