gpt4 book ai didi

PHP - 无法插入正确的时间格式

转载 作者:行者123 更新时间:2023-11-29 23:22:39 26 4
gpt4 key购买 nike

我正在尝试编写一个计划程序,我想使用 Ajax 将小时数插入我的数据库中。

如果我自己插入它(硬编码),一切都好。但是当我需要使用我的数组时,看起来 json 正在更改它,我的第一个位置不再是正确的位置,如果我插入 11:00,它只会将 00:00:01 放入我的数据库中。

这是我的 JQuery/Ajax

<script type='text/javascript'>
$("#btnExporter").click(function(){
//It create an array of vals from my input (if i do an alert, it works )
var listeElement= $("input[type='text'].inputTableau")
.map(function(){return $(this).val();}).get();

$.ajax({ // préparation et appel AJAX
url: "/ajax/Exporter.php",
type: "POST",
data: ({nomModele: $('#txtNomExporter').val(), arrayExportation: listeElement, departement : $('#listeDepartement').val()}), //On envoie le contenu des inputs
dataType: "json",
async:false,
success:

function(){ // SUCCES: On avertie que la sauvegarde a fonctionne
alert('Exportation réussi');
},
error: function(xhr, ajaxOptions, thrownError) { // ERREUR AJAX, affiche le status et l'erreur
alert(' Erreur : ' + xhr.status + '\n' + thrownError);
}
});

});
</script>

这是我的 PHP

<?php
session_start();
include_once("../includes/errorFct.inc");
include_once("../includes/identFct.inc");
include_once("../includes/fctPhpAdm.php");
$ListeChamps = $_POST['arrayExportation'];

//Name of the schedule
$nomModele = $_POST['nomModele'];
//Departement id
$departementid = $_POST['departement'];
//The array that contains the hours
$ListeChamps = $_POST['arrayExportation'];

// Faire la connexion et en cas d'erreur en avertir l'utilisateur
global $dbhost, $dbuser, $dbpass, $db;
$dbc = mysql_connect($dbhost, $dbuser, $dbpass)
or die('La base de donn�e semble down.');

if ($db!='' and !@mysql_select_db($db))
die('La base de donn�e est inaccessible.');
//This is working well
//$sql = mysql_query("INSERT INTO MODEL_HORAIRE(idDepartement, Nom, HeureDebutLundi) VALUES (3,'Allo', '11:00');");

$sql = mysql_query("INSERT INTO MODEL_HORAIRE(idDepartement, Nom, HeureDebutLundi) VALUES ($departementid,'$nomModele', '$ListeChamps[0]');");

$dbc->query($sql)
?>

非常感谢您的帮助!

编辑:我忘了问我想要什么哈哈,我想知道是否可以让我的数组保持应有的样子,以及如何做到这一点我可以保留我的时间,就像它们在我的输入中一样( 11:00 而不是 00:01 )。

再次感谢!

最佳答案

我在 3 小时后找到了原因,我将为其他可能需要与我相同的东西的人提供我的解决方案。当您在 AJAX 中推送数组时,JSON 存在一些问题。您只需使用 JSON.stringify() 推送数组并在 PHP 中分解它,这是它现在的样子 ->

Jquery:

var listeElement= $("input[type='text'].inputTableau")
.map(function(){return $(this).val();}).get();

var jsonText = JSON.stringify(listeElement);

$.ajax({ // préparation et appel AJAX
url: "/ajax/Inscrire.php",
type: "POST",
data: ({action : "set_Inscription", arrayExportation : jsonText, departement : $('#listeDepartement').val(), employe : $('#listeEmployes').val(),
dateHoraire : $('#jour').val(), projet : $('#listeProjet').val(), note : $('#txtNote').val()}),
dataType: "json",
async:false,
success:

function(data)
{
alert(data); // SUCCES: On avertie que la sauvegarde a fonctionne
},
error: function(xhr, ajaxOptions, thrownError) { // ERREUR AJAX, affiche le status et l'erreur
alert(' Erreur : ' + xhr.status + '\n' + thrownError);
}
});

PHP

$ListeChamps = $_POST['arrayExportation'];
$ListeChamps = str_replace('\"',"",$ListeChamps);
$ListeChamps = str_replace('[',"",$ListeChamps);
$ListeChamps = str_replace(']',"",$ListeChamps);

$ValeurTerminale = explode(',', $ListeChamps);

for($i=0;$i<count($ValeurTerminale);$i++)
{
$ValeurTerminale[i] = mysql_real_escape_string($ValeurTerminale[i]);
}

现在我们有了一个 PHP 数组!以前,它是一个字符串,所以我得到了字符串的第一个字符。这就是为什么它是 00:00:01 而不是 11:00:00。

关于PHP - 无法插入正确的时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27195095/

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