Bellerophon
03-06-2004, 14:24
Hallo,
Ich habe ein Problem mit folgendem Script:
<?PHP
echo "<form enctype='multipart/form-data' action='up_new_db_2d_2.php' method='post'>";
echo '<input name="userfile" type="file"><br>';
echo '<input name="userfile2" type="file"><br>';
echo '<input type="submit" value="Hochladen"><br>';
echo '</form>';
// Übername der Cookies
$dbpfad=$_COOKIE[dbnam];
$inuse=$_COOKIE[inuse];
$uploaddir = "/plaghia/www/htdocs/test/daten/".$dbpfad."/";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])
&& move_uploaded_file($_FILES['userfile2']['tmp_name'], $uploaddir . $_FILES['userfile2']['name'])) {
$dat1=$_FILES['userfile']['name'];
$dat2=$_FILES['userfile2']['name'];
include('connect_mysql.php');
// Hier ist das Problem
if ($inuse=="Y"){
$datum=getdate(time());
$wegwann=$datum['mday'].".".$datum['mon'].".".$datum['year'];
$inssql1="insert into daten (datei, dbanz, dbnam, pfad,weg, wegwer, wegwann) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."','j','".$_SERVER[PHP_AUTH_USER]."','".$wegwann."')";
} else {
$inssql1="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."')";
}
// Hier ist nochmal das Problem
if ($inuse=="Y"){
$datum=getdate(time());
$wegwann=$datum['mday'].".".$datum['mon'].".".$datum['year'];
$inssql2="insert into daten (datei, dbanz, dbnam, pfad,weg, wegwer, wegwann) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."','j','".$_SERVER[PHP_AUTH_USER]."','".$wegwann."')";
} else {
$inssql2="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."')";
}
$inssql1="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."')";
$inssql2="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."')";
if (! $res=mysql_query($inssql1,$verbindung)) {
echo "<br>ERROR: Datenbank konnte nicht geöffnet werden!<br>";
die;
}
if (! $res=mysql_query($inssql2,$verbindung)) {
echo "<br>ERROR: Datenbank konnte nicht geöffnet werden!<br>";
die;
}
// Ausgabe der Variablen zu Testzwecken
echo "<br>".$inssql1."<br>";
echo $inssql2."<br>";
echo $inuse;
// Ausgabe auskommentiert um Resultat zu lesen
/* echo "<SCRIPT language='JavaScript'>";
echo "{";
echo "location.replace('up_new_db_2d_3.php');";
echo "}";
echo "</script>";*/
} else {
echo "Bitte alle Dateien auswählen und anschliessend einmal Hochladen drücken.";
}
?>
So... $inuse wird in einer Form auf der Seite davor mit einer Checkbox abgefragt und dann in ein Cookie gesetzt (auf einer Zwischenseite). Wenn ich die Checkbox betätige, funktioniert die If-Abfrage aber trotzdem nicht. Es wird $inssql aus dem Else-Teil benutzt.
In der Ausgabe der Variablen weiter unten wird $inuse mit Y ausgegeben, so dass die Abfrage eigentlich laufen müsste.
Wenn ich nur eine Datei hochlade und nur eine If-Abfrage über $inuse anstelle funktioniert das alles wunderbar...
Ich find den Fehler einfach nicht! Vielleicht könnt ihr mir ja helfen!!
Vielen, vielen Dank im Vorraus
Thomas
Ich habe ein Problem mit folgendem Script:
<?PHP
echo "<form enctype='multipart/form-data' action='up_new_db_2d_2.php' method='post'>";
echo '<input name="userfile" type="file"><br>';
echo '<input name="userfile2" type="file"><br>';
echo '<input type="submit" value="Hochladen"><br>';
echo '</form>';
// Übername der Cookies
$dbpfad=$_COOKIE[dbnam];
$inuse=$_COOKIE[inuse];
$uploaddir = "/plaghia/www/htdocs/test/daten/".$dbpfad."/";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])
&& move_uploaded_file($_FILES['userfile2']['tmp_name'], $uploaddir . $_FILES['userfile2']['name'])) {
$dat1=$_FILES['userfile']['name'];
$dat2=$_FILES['userfile2']['name'];
include('connect_mysql.php');
// Hier ist das Problem
if ($inuse=="Y"){
$datum=getdate(time());
$wegwann=$datum['mday'].".".$datum['mon'].".".$datum['year'];
$inssql1="insert into daten (datei, dbanz, dbnam, pfad,weg, wegwer, wegwann) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."','j','".$_SERVER[PHP_AUTH_USER]."','".$wegwann."')";
} else {
$inssql1="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."')";
}
// Hier ist nochmal das Problem
if ($inuse=="Y"){
$datum=getdate(time());
$wegwann=$datum['mday'].".".$datum['mon'].".".$datum['year'];
$inssql2="insert into daten (datei, dbanz, dbnam, pfad,weg, wegwer, wegwann) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."','j','".$_SERVER[PHP_AUTH_USER]."','".$wegwann."')";
} else {
$inssql2="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."')";
}
$inssql1="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat1."','2','".$dbpfad."','".$uploaddir."')";
$inssql2="insert into daten (datei, dbanz, dbnam, pfad) values ('".$dat2."','2','".$dbpfad."','".$uploaddir."')";
if (! $res=mysql_query($inssql1,$verbindung)) {
echo "<br>ERROR: Datenbank konnte nicht geöffnet werden!<br>";
die;
}
if (! $res=mysql_query($inssql2,$verbindung)) {
echo "<br>ERROR: Datenbank konnte nicht geöffnet werden!<br>";
die;
}
// Ausgabe der Variablen zu Testzwecken
echo "<br>".$inssql1."<br>";
echo $inssql2."<br>";
echo $inuse;
// Ausgabe auskommentiert um Resultat zu lesen
/* echo "<SCRIPT language='JavaScript'>";
echo "{";
echo "location.replace('up_new_db_2d_3.php');";
echo "}";
echo "</script>";*/
} else {
echo "Bitte alle Dateien auswählen und anschliessend einmal Hochladen drücken.";
}
?>
So... $inuse wird in einer Form auf der Seite davor mit einer Checkbox abgefragt und dann in ein Cookie gesetzt (auf einer Zwischenseite). Wenn ich die Checkbox betätige, funktioniert die If-Abfrage aber trotzdem nicht. Es wird $inssql aus dem Else-Teil benutzt.
In der Ausgabe der Variablen weiter unten wird $inuse mit Y ausgegeben, so dass die Abfrage eigentlich laufen müsste.
Wenn ich nur eine Datei hochlade und nur eine If-Abfrage über $inuse anstelle funktioniert das alles wunderbar...
Ich find den Fehler einfach nicht! Vielleicht könnt ihr mir ja helfen!!
Vielen, vielen Dank im Vorraus
Thomas