我需要一个帮助,请,我是初学者与ajax。我正在尝试创建一个计时器,我想当他点击按钮时,他会得到通过ajax和数据库插入的值。当我执行代码时,它没有错误,但也不会插入到数据库中。
<?php
$pdo = new PDO('mysql:host=localhost;dbname=jeu', 'root', '', array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING,
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES cp1256'
));
?>
<!doctype html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body >
<span id="mySpan" style="font-size: 80px;">20</span>
<input id="arret" type="button" value="Arret">
<script type="text/javascript">
function decrementer() {
if ( mySpan.innerHTML > 0 ) {
mySpan.innerHTML-- ;
setTimeout(decrementer, 1000);
}
}
setTimeout(decrementer, 1000) ;
var element = document.getElementById('arret');
element.onclick = function() {
var chrono=mySpan.innerHTML;
$.ajax({
type: "GET",
data: {chrono : chrono},
success: function(data)
{
console.log(chrono);
}
});
};
</script>
<?php
if(isset($_GET['chrono']))
{
$uid = $_GET['chrono'];
echo($uid );
$resultat = $pdo -> prepare("INSERT INTO ajaxtest (name) VALUES (:name)");
$resultat -> bindParam(':rep', $uid, PDO::PARAM_STR);
if($resultat -> execute()){
$id_insere = $pdo -> lastInsertId();
}
}
?>
</body>
</html>
1条答案
按热度按时间v9tzhpje1#
我建议您将php和html分开,然后使用ajax将数据发送到php。
在你的php上你是绑定的
:rep
但你的占位符是:name
所以你需要绑定:name
```$resultat -> bindParam(':name', $uid, PDO::PARAM_STR);
$pdo = new PDO('mysql:host=localhost;dbname=jeu', 'root', '', array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING,
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES cp1256'
));
$uid = isset($_POST['chrono']) ? $_POST['chrono'] : null;
$resultat = $pdo->prepare("INSERT INTO ajaxtest (name) VALUES (:name)");
$resultat->bindParam(':name', $uid, PDO::PARAM_STR);
if ($resultat->execute()) {
$id_insere = $pdo->lastInsertId();
}
?>