Upload via PHP

Geordi

Mitglied
Also, folgendes habe ich vor:
nen Freund will auf seiner Homepage seine Freunde darstllen und hat mich gefragt, ob ich ihm da per php nen interface machen könnte,
Hab ich dann auch versucht, er will halt auch ein Bild mit hochladen, und da hängt es nun.
Ich bekomme das script nicht dazu das flie hoch zuladen, obwohl script sagt file ist da, währe euch verbunden, wenn ihr mal gucken könntet.
PHP:
<link href="../style.css" rel="stylesheet" type="text/css">

	<p><br>
      <?

include "../connect.inc.php";
  $connect;
mysql_select_db("geordi");

// hier holen wir die mit <form> gesendeten Daten
$name = $HTTP_POST_VARS['name'];
$vorname = $HTTP_POST_VARS['vorname'];
$text = $HTTP_POST_VARS['text'];

// wurde auf den submit-button gedrückt?
if ($submit)
{
// hier wird geprüft ob email, name & text ordnungsgemäß ausgefüllt sind.
if(($name == "") || ($text == "") || ($vorname == ""))
echo "<b>Fehler: Bitte gib deinen Namen, den Vornamen und den Text ein!</b>";
else {
// wenn alle Felder ausgefüllt sind, gehts hier weiter...

$eintrag = "INSERT INTO freunde (name, vorname, text, bild) VALUES ('$name', '$vorname', '$text', 'freunde/$name-$vorname')";
mysql_query($eintrag);
echo "Danke, Dein Freund wurde eingetragen.";
}
##Upload vom Bild
$path    = "../freunde/";
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size']; 
if($type != "image/gif" || $type != "image/jpeg") {
    $err[] = "nur gif und jpeg Dateien dürfen hochgeladen werden.";
}
if($size > "15000") {
    $err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 15 KB!";
} 
$path .= "$name-$vorname";
if(empty($err)) {
    copy("$tempname", "$path");
    echo "Die Datei $name wurde erfolgreich hochgeladen!";
}
else {
    foreach($err as $error)
    echo "$error<br>";
}
}

echo "</p>
	<p align='center' class='div-headline'>.:Freunde-Administrationspanel:.</p>
	<form name='form1' method='post' action='index.php?site=freundmin-insert'>
	<table width='100%'  border='0' bgcolor='#FFFFFF'>
    <tr class='div'>
      <td width='30%'>Name:</td>
      <td width='70%'><input name='name' type='text'></td>
    </tr>
    <tr class='div'>
      <td>Vorname:</td>
      <td><input name='vorname' type='text'></td>
    </tr>
    <tr class='div'>
      <td>Bild:</td>
      <td><input type='hidden' name='MAX_FILES_SIZE' value='100000'>
  <input type='file' name='file' size='40' maxlength='100000'></td>
    </tr>
    <tr class='div'>
      <td>Beschreibung:</td>
      <td><textarea name='text' cols='40' rows='10' id='text'></textarea></td>
    </tr>
  </table>
  <p>
    <input name='submit' type='submit' id='submit' value='Senden'>
    <input name='Abbrechen' type='reset' id='Abbrechen' value='Zur&uuml;cksetzen'>
</p>
</form>";

?>
</html>
 
Du hast keinen enctype im form-Tag. Versuchs mal so:
Code:
<form name='form1' method='post' enctype='multipart/form-data' action='index.php?site=freundmin-insert'>
 
Außerdem würde ich hier noch schaun:
copy("$tempname", "$path");
Du gibst den Pfad an, allerdings muss da auch der folgende Name des Bildes stehen. Also vielleicht so:
copy($tempname, $path.$name);
 
Zuletzt bearbeitet:
Also er sagt mir jetzt zwar, dass die datei hochgladen wurde, aber ich finde sie nicht.
Sie müsste ja jetzt vom admin-ordner aus gesehen in "../freunde/" liegen, tut sie aber nicht
 
Hab da jetzt doch nochmal ne Frage:
wie mache ich das wenn ich eine über dieses Scirpt hochgeladene Datei aktuallisieren also die alte ersetzen will?
Wie muss ich das Script dafür umstricken?
 
Zurück