gpt4 book ai didi

javascript - 尽管出现成功消息,为什么用户输入不会进入数据库?

转载 作者:行者123 更新时间:2023-11-28 03:11:56 26 4
gpt4 key购买 nike

我正在尝试将用户输入(应该是电子邮件地址)存储到我的数据库中,但尽管收到成功消息,但它似乎不起作用:

INSERT INTO mydb.emails VALUES (''){"data":"您的数据已成功添加"}

(您可以在 php 文件中我的代码的 if 语句中看到此消息)。

我怀疑我创建表的方式和/或我在 php 文件中使用 $sql 变量的方式有问题。

我有点碰壁了,想知道我做错了什么?

下面我有所需的所有信息。

这是我的 js 文件:

import React, {Component} from 'react';
import axios from 'axios';

export default class ProductList extends Component {
constructor(props) {
this.addFormData = this.addFormData.bind(this);
}

addFormData(evt) {
evt.preventDefault();
const fd = new FormData();
fd.append('myEmail', this.refs.myEmail.value);
var headers = {
'Content-Type': 'application/json;charset=UTF-8',
// 'Host' : 'sdb.amazonaws.com'
"Access-Control-Allow-Origin": "*"
};
axios.post("myEndPoint", headers, fd)
.then(res => {
alert(res.data.data);
});
}

render() {
let styles = this.state.modalVisible
? {display: "block"}
: {display: "none"};
return (
<React.Fragment>
<form>
<div className="col-xs-2 text-center">
<input type="email" id="Email" aria-describedby="emailHelp" placeholder="Enter email" ref="myEmail" />
</div>
<button type="submit" className="submitEmail btn btn-primary" onClick={this.addFormData}>Submit</button>
</form>
</div>
</React.Fragment>
);
}
}

这是我的 php 文件:

<?php
header("Access-Control-Allow-Origin: *");

$servername = "my host";
$username = "my name";
$password = "my pw";
$dbname = "mydb";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "INSERT INTO innodb.emails
VALUES ('".$_POST['myEmail']."')";

echo $sql;

if (mysqli_query($conn,$sql)) {
$data = array("data" => "You Data added successfully");
echo json_encode($data);
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}

?>

这是我的 SQL 查询,用于创建保存电子邮件的表:

CREATE TABLE mydb.emails(emails VARCHAR(200)); 
SELECT * FROM mydb.emails;

最佳答案

看起来您正在一个架构中创建表,然后尝试插入到另一个架构中的相同表中:

INSERT INTO innodb.emails

对比

SELECT * FROM mydb.emails

注意innodbmydb。您在两个不同的模式中是否有相同的表?也许您只是在错误的位置寻找数据?希望有帮助。

有关模式与数据库的更多信息,请查看 here .

关于javascript - 尽管出现成功消息,为什么用户输入不会进入数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60022329/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com