mdean
|
Forenposter
|
|
registriert
|
03.01.2007
|
wohnt in
|
Schweiz
|
Beiträge
|
90
|
|
Jetzt kommen folgende Fehlermeldungen:
Notice: Undefined variable: errors in C:\Testserver\test\usercenter\up_skript.php on line 48
Notice: Undefined variable: endung in C:\Testserver\test\usercenter\up_skript.php on line 61
Notice: Undefined index: datei in C:\Testserver\test\usercenter\up_skript.php on line 64
Aber die variablen hab ich doch definiert...
Hier nochmals der code:
PHP:
<?
error_reporting(E_ALL);
include '../conect.php';
$connid = @mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS) OR die("Error: ".mysql_error());
mysql_select_db($MYSQL_DATA) OR die("Error: ".mysql_error());
if(isset($_POST['Send_x']) AND $_POST['Send_x'] == "Upload") {
$errors = array();
// Prüft, ob ein Interpret eingegeben wurde
if(trim($_POST['Interpret'])=='')
$errors[]= "Bitte geben Sie den Namen des Interpreten an.";
// Prüft, ob der Interpret mindestens 2 Zeichen enthält
elseif(strlen(trim($_POST['Interpret'])) < 2)
$errors[]= "Der Name des Interpreten muss mindestens 2 Zeichen lang sein";
// Prüft ob ein Album angegeben wurde
if(trim($_POST['Album'])=='')
$errors[]= "Bitte geben Sie den Namen des Albums an.";
// Prüft ob ein Songname eingegeben wurde
if(trim($_POST['Songname'])=='')
$errors[]= "Bitte geben Sie den Titel für den Song an.";
// Prüft ob der richtige Mime Typ vorliegt
$erlaubte_typen = array('image/pjpeg',
'image/jpeg',
'application/pdf'
);
if(!in_array($_FILES['datei']['type'], $erlaubte_typen))
$errors[] = "Der Mime-Typ ihrer Datei ist verboten.";
// Prüft ob die Datei die richtige Endung hat
$erlaubte_endungen = array('jpeg',
'jpg',
'pdf'
);
$endung = strtolower(substr($_FILES['datei']['name'], strrpos($_FILES['datei']['name'], '.')+1));
if(!in_array($endung, $erlaubte_endungen))
$errors[] = "Die Dateiendung muss .jpeg .jpg oder .pdf lauten. ";
// Prüft ob die Datei die richtige grösse hat
if($_FILES['datei']['size'] > 10*1024*1024)
$errors[] = "Bitte wählen Sie eine Datei aus, die kleiner als 10 MB ist.";
}
if(count($errors)){
echo "Ihre Datei konnte nicht gespeichert werden.<br>\n".
"<br>\n";
foreach($errors as $error)
echo $error."<br>\n";
}
else {
//Datei speichern
$uploaddir = 'noten/';
//Neuen Dateinamen erstellen
$Name = "DRUM_".substr(microtime(),-8).".".$endung;
//Upload
if (move_uploaded_file($_FILES['datei']['tmp_name'], $uploaddir.$Name)) {
$sql = "INSERT INTO
notes
(UserID,
Newname,
Interpret,
Album,
Songname,
Date
)
VALUES
('".mysql_real_escape_string(trim($_SESSION['UserID']))."',
'".mysql_real_escape_string(trim($Name))."',
'".mysql_real_escape_string(trim($_POST['Interpret']))."',
'".mysql_real_escape_string(trim($_POST['Album']))."',
'".mysql_real_escape_string(trim($_POST['Songname']))."',
CURDATE()
)
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
echo "Vielen Dank!<br>\n".
"Ihre Daten wurden erfolgreich kopiert.\n<br>".
"Nach erfolgreicher Überprüfung, wird die Datei in der Downloadpage erscheinen.\n<br>";
}
}
?>
|
Flitze
|
Administrator
|
|
registriert
|
17.10.2006
|
wohnt in
|
Eschwege
|
Beiträge
|
332
|
|
PHP:
<?php
// Prüft ob die Datei die richtige grösse hat
if($_FILES['datei']['size'] > 10*1024*1024)
$errors[] = "Bitte wählen Sie eine Datei aus, die kleiner als 10 MB ist.";
}
?>
An dieser Stelle machst du ne Klammer zu, die nicht geöffnet wird. Diese Klammer schließt dann dieses if:
PHP:
<?php
if(isset($_POST['Send_x']) AND $_POST['Send_x'] == "Upload") {
?>
Darin werden aber die Variable $error und $endung definiert.
Naja wie dem auch sei, es liegt jedenfalls an der falschen Klammer, wäre jetzt etwas aufwendig dir zu erläutern, was dadurch alles falsch läuft
|