Hallo,
das Problem ist ja (für mich), vor dem UPDATE muss ja ein INSERT gemacht werden.
Das heißt ja , ich müsste ja Wissen ob eine Zeile mit dem Datum schon vorhanden ist nur Weiß ich nicht wie ich diese Abfrage (ist Zeile mit Datum schon da) mache.
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in TEST_sql_Liste.php on line 47 Nicht vorhanden
...habs gefunden.
...so,
jetzt habe ich ein Problem mit dem UPDATE:
Beim UPDATE wird ein vorhandener Eintrag entfernt dafür aber an anderer Stelle einer eingefügt.
EDIT: ich glaube ich weiß warum die Einträge verschwinden.
Beim UPDATE werden alle Werte neu überschrieben. Da ja der Inhalt der "$_SESSION['schicht']" in die passende Variable geschrieben wird, sind die anderen natürlich leer.
Das nervt ja, machste eins dann folgt das nächste...
Wie kann ich denn jetzt den Inhalt der schon gespeicherten Daten vor dem UPDATE sichern?
das Problem ist ja (für mich), vor dem UPDATE muss ja ein INSERT gemacht werden.
Das heißt ja , ich müsste ja Wissen ob eine Zeile mit dem Datum schon vorhanden ist nur Weiß ich nicht wie ich diese Abfrage (ist Zeile mit Datum schon da) mache.
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in TEST_sql_Liste.php on line 47 Nicht vorhanden
PHP:
$datum_mysql = "2013-03-18";
$sql = "SELECT DATUM FROM FROM FW_SendLog_Time WHERE DATUM ='$datum_mysql'";
$result = mysql_query($sql);
if (mysql_fetch_array($result)) // <--------- ZEILE 47
echo "Vorhanden";
else
echo "Nicht vorhanden";
...habs gefunden.
PHP:
$datum_mysql = "2013-03-18";
$sql = "SELECT DATUM FROM FW_SendLog_Time WHERE DATUM ='".$datum_mysql."';";
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) > 0) {
echo ("Vorhanden");
} else {
echo ("Nicht vorhanden");
}
...so,
jetzt habe ich ein Problem mit dem UPDATE:
Beim UPDATE wird ein vorhandener Eintrag entfernt dafür aber an anderer Stelle einer eingefügt.
EDIT: ich glaube ich weiß warum die Einträge verschwinden.
Beim UPDATE werden alle Werte neu überschrieben. Da ja der Inhalt der "$_SESSION['schicht']" in die passende Variable geschrieben wird, sind die anderen natürlich leer.
Das nervt ja, machste eins dann folgt das nächste...
Wie kann ich denn jetzt den Inhalt der schon gespeicherten Daten vor dem UPDATE sichern?
PHP:
$stempel = date("Y-m-d H:i:s",time());
if("FW3.1" == ($_SESSION['schicht'])) { $schicht_01 = mysql_real_escape_string($_SESSION['schicht']); }
if("FW3.2" == ($_SESSION['schicht'])) { $schicht_02 = mysql_real_escape_string($_SESSION['schicht']); }
if("PP1.1" == ($_SESSION['schicht'])) { $schicht_03 = mysql_real_escape_string($_SESSION['schicht']); }
if("PP1.2" == ($_SESSION['schicht'])) { $schicht_04 = mysql_real_escape_string($_SESSION['schicht']); }
if("PP2.2" == ($_SESSION['schicht'])) { $schicht_05 = mysql_real_escape_string($_SESSION['schicht']); }
// INSERT oder UPDATE FW_SendLog_Time
$sql = "SELECT DATUM FROM FW_SendLog_Time WHERE DATUM ='".$_SESSION['DATUM_mysql']."';";
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) > 0) {
echo ("Vorhanden");
// Update
$sql = "
UPDATE
FW_SendLog_Time
SET
SCHICHT_01 = '".$schicht_01."',
SCHICHT_02 = '".$schicht_02."',
SCHICHT_03 = '".$schicht_03."',
SCHICHT_04 = '".$schicht_04."',
SCHICHT_05 = '".$schicht_05."',
SCHICHT_06 = '".$schicht_06."',
VERSENDET = 'JA'
WHERE
DATUM = '".$_SESSION['DATUM_mysql']."';";
$ergebnis = mysql_query( $sql, $conID ) OR die(mysql_error());
if(! $ergebnis )
{
die('Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden: ' . mysql_error());
}
} else {
echo ("Nicht vorhanden");
// INSERT
$sql = "
INSERT INTO `FW_SendLog_Time` (
`DATUM`,
`SCHICHT_01`,
`SCHICHT_02`,
`SCHICHT_03`,
`SCHICHT_04`,
`SCHICHT_05`,
`SCHICHT_06`,
`SCHICHT_07`,
`SCHICHT_08`,
`SCHICHT_09`,
`SCHICHT_10`,
`ERSTELLT`,
`VERSENDET`,
`STEMPEL` )
VALUES(
'{$_SESSION['DATUM_mysql']}',
'{$schicht_01}',
'{$schicht_02}',
'{$schicht_03}',
'{$schicht_04}',
'{$schicht_05}',
'',
'',
'',
'',
'',
'',
'JA',
'{$stempel}'
)";
// Schickt die Anfrage an die DB und schreibt die Daten in die Tabelle
mysql_query( $sql );
// Pruefen ob der neue Datensatz tatsaechlich eingefuegt wurde
if (mysql_affected_rows() == 1)
{
echo "Der Datensatz wurde hinzugefügt!";
}
else
{
echo "Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden!";
}
}