Hallo!
Ich habe ein Formular, in dem ich verschiedene Werte eingeben kann.
An der Zahl sind es insgesamt 23 Werte.
Jeder einzelne Wert wird in eine Variable gespeichert.
Nach der Eingabe werden die Variablen per Button und insert-Anweisung in eine Tabelle (gutachten) gespeichert.
Nun möchte ich, dass zwei der Variablen gleichzeitig in eine andere Tabelle (kalkulation) abgespeichert werden. Grund dafür ist, dass ich zwei Formulare per join über eine ID (auftragsnummer) miteinander so verbinden möchte, sodass ich zwischen mehreren Formularen (im Moment erstmal 2 Formulare) hin und her wechseln kann.
Hier der Code:
Bei der Insert-Anweisung bekomme ich immer wieder einen Fehler ausgegeben, bei dem ich nicht weiterkomme.
Fehler:
Failed to execute query:
SQL: INSERT INTO `kalkulation` (`id`, `gutachtennummer`) VALUES('', '')
Ich übergeben aber folgendes:
$sSql = "INSERT INTO `kalkulation` (`id`, `gutachtennummer`) VALUES('$x_id', '$x_auftragsnummer')";
Wo liegt da der Fehler? Was mache ich falsch?
Für jede Hilfe bin ich sehr dankbar!
Ich habe ein Formular, in dem ich verschiedene Werte eingeben kann.
An der Zahl sind es insgesamt 23 Werte.
Jeder einzelne Wert wird in eine Variable gespeichert.
Nach der Eingabe werden die Variablen per Button und insert-Anweisung in eine Tabelle (gutachten) gespeichert.
Nun möchte ich, dass zwei der Variablen gleichzeitig in eine andere Tabelle (kalkulation) abgespeichert werden. Grund dafür ist, dass ich zwei Formulare per join über eine ID (auftragsnummer) miteinander so verbinden möchte, sodass ich zwischen mehreren Formularen (im Moment erstmal 2 Formulare) hin und her wechseln kann.
Hier der Code:
PHP Code:
<?php session_start(); ?>
<?php ob_start(); ?>
<?php
define("DEFAULT_LOCALE", "de_DE");
@setlocale(LC_ALL, DEFAULT_LOCALE);
?>
<?php
$conn = phpmkr_db_connect(HOST, USER, PASS, DB, PORT);
?>
<form name="gutachtenadd" id="gutachtenadd" action="gutachtenadd.php" method="post" onSubmit="return EW_checkMyForm(this);">
<p>
<input type="hidden" name="a_add" value="A">
<input type="hidden" name="id" value="x_id">
<?php
if (@$_SESSION["ewmsg"] <> "") {
?>
<p><span class="ewmsg"><?php echo $_SESSION["ewmsg"] ?></span></p>
<?php
$_SESSION["ewmsg"] = ""; // Clear message
}
?>
<table class="kgsTable">
<tr><td><table class="kgsTableFont">
<tr>
<td class="ewTableHeader"><span>Gutachtentyp</span></td>
<td class="ewTableAltRow"><span>
<?php
$x_gutachtentypList = "<select name=\"x_gutachtentyp\">";
$x_gutachtentypList .= "<option value=''>Bitte Gutachtentyp wählen! </option>";
$x_gutachtentypList .= "<option value=\"Gutachten\"";
if (@$x_gutachtentyp == "Gutachten") {
$x_gutachtentypList .= " selected";
}
$x_gutachtentypList .= ">" . "Gutachten" . "</option>";
$x_gutachtentypList .= "<option value=\"Kurzgutachten\"";
if (@$x_gutachtentyp == "Kurzgutachten") {
$x_gutachtentypList .= " selected";
}
$x_gutachtentypList .= ">" . "Kurzgutachten" . "</option>";
$x_gutachtentypList .= "<option value=\"Wertgutachten\"";
if (@$x_gutachtentyp == "Wertgutachten") {
$x_gutachtentypList .= " selected";
}
$x_gutachtentypList .= ">" . "Wertgutachten" . "</option>";
$x_gutachtentypList .= "<option value=\"Reparaturnachweis\"";
if (@$x_gutachtentyp == "Reparaturnachweis") {
$x_gutachtentypList .= " selected";
}
$x_gutachtentypList .= ">" . "Reparaturnachweis" . "</option>";
$x_gutachtentypList .= "</select>";
echo $x_gutachtentypList;
?>
</span></td>
<td class="ewTableHeader"><span>Auftragsnummer</span></td>
<td class="ewTableAltRow"><span>
<input type="text" readonly="1" name="x_auftragsnummer" id="x_auftragsnummer" size="45" maxlength="15" value="<?php $time = gettimeofday(); echo $x_sachverstaendiger, gmdate("dmy"),"-",$time[usec],"A",$i; echo htmlspecialchars(@$x_auftragsnummer); ?>">
</span></td>
</tr>
<tr>
<td class="ewTableHeader"><span>Sachverstaendiger</span></td>
<td class="ewTableAltRow"><span>
<?php
$x_sachverstaendigerList = "<select name=\"x_sachverstaendiger\">";
$x_sachverstaendigerList .= "<option value=''>Sachverständiger wählen! </option>";
$x_sachverstaendigerList .= "<option value=\"KHD\"";
if (@$x_sachverstaendiger == "MU") {
$x_sachverstaendigerList .= " selected";
}
$x_sachverstaendigerList .= ">" . "Müller" . "</option>";
$x_sachverstaendigerList .= "<option value=\"ME\"";
if (@$x_sachverstaendiger == "ETS") {
$x_sachverstaendigerList .= " selected";
}
$x_sachverstaendigerList .= ">" . "Meier" . "</option>";
$x_sachverstaendigerList .= "</select>";
echo $x_sachverstaendigerList;
?>
</span></td>
<td class="ewTableHeader"><span></span></td>
<td class="ewTableAltRow"><span></span></td>
</tr>
<tr>
<td class="ewTableHeader"><span>Auftraggeber</span></td>
<td class="ewTableAltRow"><span>
<input type="text" name="x_auftraggeber" id="x_auftraggeber" size="45" maxlength="30" value="<?php echo htmlspecialchars(@$x_auftraggeber) ?>">
</span></td>
<td class="ewTableHeader"><span>Kennzeichen Auftraggeber</span></td>
<td class="ewTableAltRow"><span>
<input type="text" name="x_kennzeichen_auftraggeber" id="x_kennzeichen_auftraggeber" size="45" maxlength="10" value="<?php echo htmlspecialchars(@$x_kennzeichen_auftraggeber) ?>">
</span></td>
</tr>
.
.
.
.
</form>.....</table>
<?php
phpmkr_db_close($conn);
?>
<?php
//-------------------------------------------------------------------------------
// Funktion zum Einfügen der Daten AddData()
// - Feld-Variablen werden ausgelesen
function AddData($conn)
{
global $x_id;
$sSql = "SELECT * FROM `gutachten`";
$sWhere = "";
$sGroupBy = "";
$sHaving = "";
$sOrderBy = "";
// Check for duplicate key
$bCheckKey = true;
$sWhereChk = $sWhere;
if ((@$x_id == "") || (is_null($x_id))) {
$bCheckKey = false;
} else {
if ($sWhereChk <> "") { $sWhereChk .= " AND "; }
$sTmp = (get_magic_quotes_gpc()) ? stripslashes($x_id) : $x_id;
$sWhereChk .= "(`id` = " . addslashes($sTmp) . ")";
}
if ($bCheckKey) {
$sSqlChk = $sSql . " WHERE " . $sWhereChk;
$rsChk = my_query($sSqlChk, $conn) or die("Failed to execute query: " . my_error() . '<br>SQL: ' . $sSqlChk);
if (my_num_rows($rsChk) > 0) {
$_SESSION["ewmsg"] = "Duplicate value for primary key";
my_free_result($rsChk);
return false;
}
my_free_result($rsChk);
}
// Field auftragsnummer
$theValue = (!get_magic_quotes_gpc()) ? addslashes($GLOBALS["x_auftragsnummer"]) : $GLOBALS["x_auftragsnummer"];
$theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL";
$fieldList["`auftragsnummer`"] = $theValue;
// Field gutachtentyp
$theValue = (!get_magic_quotes_gpc()) ? addslashes($GLOBALS["x_gutachtentyp"]) : $GLOBALS["x_gutachtentyp"];
$theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL";
$fieldList["`gutachtentyp`"] = $theValue;
// Field sachverstaendiger
$theValue = (!get_magic_quotes_gpc()) ? addslashes($GLOBALS["x_sachverstaendiger"]) : $GLOBALS["x_sachverstaendiger"];
$theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL";
$fieldList["`sachverstaendiger`"] = $theValue;
// Field auftraggeber
$theValue = (!get_magic_quotes_gpc()) ? addslashes($GLOBALS["x_auftraggeber"]) : $GLOBALS["x_auftraggeber"];
$theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL";
$fieldList["`auftraggeber`"] = $theValue;
// Field kennzeichen_auftraggeber
$theValue = (!get_magic_quotes_gpc()) ? addslashes($GLOBALS["x_kennzeichen_auftraggeber"]) : $GLOBALS["x_kennzeichen_auftraggeber"];
$theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL";
$fieldList["`kennzeichen_auftraggeber`"] = $theValue;
// insert into database
$sSql = "INSERT INTO `gutachten` (";
$sSql .= implode(",", array_keys($fieldList));
$sSql .= ") VALUES (";
$sSql .= implode(",", array_values($fieldList));
$sSql .= ")";
/*************FOLGENDE ANWEISUNG IST MEIN PROBLEMFALL**************/
if(isset($_POST['Action'])) {
echo $x_id; $X_auftragsnummer;
$sSql2 = "INSERT INTO `kalkulation` (`gutachtennummer`) VALUES('$x_auftragsnummer')";
phpmkr_query($sSql2, $conn) or die("Failed to execute query: " . phpmkr_error() . '<br>SQL: ' . $sSql2);
} else { }
/********************************ENDE DER ANWEISUNG**************************/
$rs = my_query($sSql,$conn) or die("Failed to execute query: " . my_error() . '<br>SQL: ' . $sSql);
if (my_num_rows($rs) == 0) {
$bLoadData = false;
}else{
$bLoadData = true;
$row = my_fetch_array($rs);
// Get the field contents
$GLOBALS["x_id"] = $row["id"];
$GLOBALS["x_auftragsnummer"] = $row["auftragsnummer"];
$GLOBALS["x_gutachtentyp"] = $row["gutachtentyp"];
$GLOBALS["x_sachverstaendiger"] = $row["sachverstaendiger"];
$GLOBALS["x_auftraggeber"] = $row["auftraggeber"];
$GLOBALS["x_kennzeichen_auftraggeber"] = $row["kennzeichen_auftraggeber"];
}
my_free_result($rs);
return $bLoadData;
}
?>
Fehler:
Failed to execute query:
SQL: INSERT INTO `kalkulation` (`id`, `gutachtennummer`) VALUES('', '')
Ich übergeben aber folgendes:
$sSql = "INSERT INTO `kalkulation` (`id`, `gutachtennummer`) VALUES('$x_id', '$x_auftragsnummer')";
Wo liegt da der Fehler? Was mache ich falsch?
Für jede Hilfe bin ich sehr dankbar!