我已经使用没有ajax的直接表单提交检查了我的PHP代码 - 在这种情况下,内容会毫无问题地写入数据库。
但是当我尝试用AJAX做它时它不起作用 - 虽然数据似乎已经转移到我的php文件,因为成功:函数gehts被调用。
(我在Windows服务器2012上运行php 5.6)
我的js文件:
$(function (){
var $allgSubmit = $('#allg_firmendaten_submit');
$allgSubmit.click(function(){
event.preventDefault();
var gehrKundennummer = $('#gehrKundennummer').val();
var kundenklasse = $("input[type='radio'][name='kundenklasse']:checked").val();
var lkw12t = $('#lkw12t').val();
var lkw3t = $('#lkw3t').val();
var autobus = $('#autobus').val();
var firmenname1 = $('#firmenname1').val();
var firmenname2 = $('#firmenname2').val();
var uidnummer = $('#uidnummer').val();
var peselregon = $('#peselregon').val();
var firmenart = $('#firmenart option:selected').val();
var strasse = $('#strasse').val();
var ort = $('#ort').val();
var plz = $('#plz').val();
var land = $('#land').val();
var allgArray = [ gehrKundennummer, kundenklasse, lkw12t, lkw3t, autobus, firmenname1, firmenname2, uidnummer, peselregon, firmenart, strasse, ort, plz, land ];
$.ajax({
url: "#####/logic/add_client_logic.php",
type: "POST",
data: 'allgArray='+allgArray,
success: function(){
var allgSave = $('#allgSave');
allgSave.text('Speichern erfolgreich!');
allgSave.toggle();
},
error: function(){
var allgSave = $('#allgSave');
allgSave.text('Speichern fehlgeschlagen!');
allgSave.toggle();
}
});
});
});
我的php处理程序:
<?php
require('\class\classKunde.php');
$gehrKundennummer = 0;
$kundenklasse = 0;
$lkw12t = 0;
$lkw3t = 0;
$autobus = 0;
$firmenname1 = 0;
$firmenname2 = 0;
$uidnummer = 0;
$peselregon = 0;
$firmenart = 0;
$strasse = 0;
$ort = 0;
$plz = 0;
$land = 0;
$gehrKundennummer = (isset($_POST['gehrKundennummer']) ? $_POST['gehrKundennummer'] : $_POST[0]);
$kundenklasse = (isset($_POST['kundenklasse']) ? $_POST['kundenklasse'] : $_POST[1]);
$lkw12t = (isset($_POST['lkw12t']) ? $_POST['lkw12t'] : $_POST[2]);
$lkw3t = (isset($_POST['lkw3t']) ? $_POST['lkw3t'] : $_POST[3]);
$autobus = (isset($_POST['autobus']) ? $_POST['autobus'] : $_POST[4]);
$firmenname1 = (isset($_POST['firmenname1']) ? $_POST['firmenname1'] : $_POST[5]);
$firmenname2 = (isset($_POST['firmenname2']) ? $_POST['firmenname2'] : $_POST[6]);
$uidnummer = (isset($_POST['uidnummer']) ? $_POST['uidnummer'] : $_POST[7]);
$peselregon =(isset($_POST['peselregon']) ? $_POST['peselregon'] : $_POST[8]);
$firmenart = (isset($_POST['firmenart']) ? $_POST['firmenart'] : $_POST[9]);
$strasse = (isset($_POST['strasse']) ? $_POST['strasse'] : $_POST[10]);
$ort = (isset($_POST['ort']) ? $_POST['ort'] : $_POST[11]);
$plz = (isset($_POST['plz']) ? $_POST['plz'] : $_POST[12]);
$land = (isset($_POST['land']) ? $_POST['land'] : $_POST[13]);
$data = array($gehrKundennummer, $kundenKlasse, $lkw12t, $lkw3t, $autobus, $firmenname1, $firmenname2, $uidnummer, $peselregon, $firmenart, $strasse, $ort, $plz, $land);
$insert = new kunde();
if($insert -> insert_exists($data) == true){
// Kunde existiert bereits
}else{
// Methode zum Einfügen in die DB wird aufgerufen
$insert -> insert_client($data, 1);
}
?>
和我班级的片段:
class kunde {
public function insert_client($data, $case){
$serverName = "NAME\MSSQLSRV";
$connectionInfo = array('Database'=>'TEST', "UID"=>"TEST", "PWD"=>"TEST");
$conn = sqlsrv_connect($serverName, $connectionInfo);
switch ($case) {
case 1:
echo "Case 1 executed";
$gehrKundennummer = $data[0];
$kundenklasse = $data[1];
$lkw12t = $data[2];
$lkw3t = $data[3];
$autobus = $data[4];
$firmenname1 = $data[5];
$firmenname2 = $data[6];
$uidnummer = $data[7];
$peselregon = $data[8];
$firmenart = $data[9];
$strasse = $data[10];
$ort = $data[11];
$plz = $data[12];
$land = $data[13];
$angelegt_am = date();
$tsql = "INSERT INTO Kundendaten$ (gehr_kundennummer, kundenklasse_ID, firmenname1, firmenname2, firmenart, strasse, land, plz, ort, pesel_regon, uid, lkw12t, lkw3t, autobus, angelegt_am)
VALUES ('$gehrKundennummer', '$kundenklasse', '$firmenname1', '$firmenname2', '$firmenart', '$strasse', '$land', '$plz', '$ort', '$uidnummer','$peselregon', '$lkw12t', '$lkw3t', '$autobus', '$angelegt_am')";
break;
default:
# code...
break;
}
$stmt = sqlsrv_query($conn, $tsql);
if($stmt){
echo "Erfolgreich in Datenbank geschrieben";
}
}
// ... rest
}
答案 0 :(得分:1)
试试这个:-----------
//change this ----------
var allgArray = { 'gehrKundennummer':gehrKundennummer, 'kundenklasse':kundenklasse,'lkw12t':lkw12t,'lkw3t':lkw3t,'autobus':autobus,'firmenname1':firmenname1,'firmenname2':firmenname2,'uidnummer':uidnummer,'peselregon':peselregon,'firmenart':firmenart,'strasse':strasse,'ort':ort,'plz':plz,'land':land}; //change this
$.ajax({
url: "#####/logic/add_client_logic.php",
type: "POST",
data:allgArray, //change this
-------------------