ERLEDIGT
JA
JA
ANTWORTEN
23
23
ZUGRIFFE
1733
1733
EMPFEHLEN
-
19.12.05 14:03 #1
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Alloha!
Ich habe viele Beiträge zum Thema Dateiupload gelsen und viel dazu ausprobiert, das was ich dann aber erreichen möchte, hat nicht funktioniert. Es sieht dabei wie folgt aus:
Ein Formular soll Daten aufnehmen und in einer entsprechenden Datenbank speicher. (erledigt)
Zu diesm Formular sollen Dokument hochgeladen werden. Diese dann umbenannt und auf dem Server gespeichert werden. (nicht erledigt)
So, jetzt meine Script vereinfacht:So! Vom Gedankengang her ist das so richtig ? Oder stimmt Grundsätzlich in meine Code nicht?PHP-Code:/* Save the new information to database. Call Print_Applicant to display the new entry. */
Function Commit_Save ($first_name, $last_name, $street, $town, $phone, $mail, $personalrecord, $education, $vocational, $conclusiondocument, $info, $photo, $certification1, $certification2) {
$result = mysql_query("INSERT INTO care_applicant (first_name, last_name, street, town, phone, mail, education, vocational, info) VALUES ('$first_name', '$last_name', '$street', '$town', '$phone', '$mail', '$education', '$vocational', '$info')") OR die(mysql_error());
$uid = mysql_insert_id();
$state = "";
$status = "Sie haben uns Ihre Daten gesendet. Wir werden uns umgehend um Sie kümmern.";
mail("info@online.de","Onlinebewerbung von $first_name $last_name", "Über die Webseite der Care - Berlin Brandenburg bewirbt sich:\n\n\nVorname:\t $first_name\nNachname:\t $last_name\n\nStrasse:\t $street\nOrt:\t\t $town\n\nTelefon:\t $phone\nE-Mail:\t $mail\n\nAbschluß:\t $education\nAusildung:\t $vocational\n\nKommentar:\n $info\n\n\n$REMOTE_ADDR\n$REMOTE_HOST\n$HTTP_USER_AGENT","From: info@online.de");
/* Umbenennen und hochladen */
rename(".$personalrecord.", ".$first_name.-.$last_name.-personalrecord");
move_uploaded_file($_FILES['$personalrecord']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
rename(".$conclusiondocument.", ".$first_name.-.$last_name.-conclusiondocument.");
move_uploaded_file($_FILES['$conclusiondocument']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
rename(".$photo.", ".$first_name.-.$last_name.-photo.");
move_uploaded_file($_FILES['$photo']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
rename(".$certification1.", ".$first_name.-.$last_name.-certification1.");
move_uploaded_file($_FILES['$certification1']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
rename(".$certification2.", ".$first_name.-.$last_name.-certification2.");
move_uploaded_file($_FILES['$certification2']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
Print_Applicant($uid, $status);
};
/* This function open a form to input the Information. */
Function Applicant_Form ($state, $uid){
$state = "Commit_Save";
echo "<table width=\"97%\" border=\"0\" align=\"center\">
</tr>
</table>
<FORM METHOD = \"POST\" ACTION=\"index.php?inhalt=applicant\">
<table border=\"0\" align=\"center\">
<tr>
<td><INPUT TYPE = \"hidden\" NAME = \"uid\" VALUE = \"$uid\"></td>
<td><INPUT TYPE = \"hidden\" NAME = \"state\" VALUE = \"$state\"></td>
</tr>
<tr>
<td class=\"inhalt\">Vorname: </td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"first_name\" VALUE = \"$first_name\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">Nachname: </td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"last_name\" VALUE = \"$last_name\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">Straße und Nr: </td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"street\" VALUE = \"$street\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">Plz und Ort:</td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"town\" VALUE = \"$town\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\"><br>Telefon: </td>
<td align=\"left\"><br><INPUT TYPE = \"TEXT\" NAME=\"phone\" VALUE = \"$phone\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">E-Mail: </td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"mail\" VALUE = \"$mail\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\"><br>Lebenslauf: </td>
<td align=\"left\"><br><INPUT TYPE = \"file\" NAME=\"personalrecord\" VALUE = \"$personalrecord\" size=\"25\"></td>
</tr>
<tr>
<td class=\"inhalt\"><br>Schulabschluß: </td>
<td align=\"left\"><br><INPUT TYPE = \"TEXT\" NAME=\"education\" VALUE = \"$education\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">Ausbildung: </td>
<td align=\"left\"><INPUT TYPE = \"TEXT\" NAME=\"vocational\" VALUE = \"$vocational\" size=\"46\"></td>
</tr>
<tr>
<td class=\"inhalt\">Abschlußurkunde: </td>
<td align=\"left\"><INPUT TYPE = \"file\" NAME=\"conclusiondocument\" VALUE = \"$conclusiondocument\" size=\"25\"></td>
</tr>
<tr>
<td class=\"inhalt\" valign=\"top\"><br><br>weiter Angaben: </td>
<td><br><textarea cols=\"35\" rows=\"7\" NAME=\"info\" VALUE = \"$info\">".$info."</textarea></td>
</tr>
<tr>
<td class=\"inhalt\"><br>Lichtbild: </td>
<td align=\"left\"><br><INPUT TYPE = \"file\" NAME=\"photo\" VALUE = \"$photo\" size=\"25\"></td>
</tr>
<tr>
<td class=\"inhalt\">aussagekräftiges Zeugnis: </td>
<td align=\"left\"><INPUT TYPE = \"file\" NAME=\"certification1\" VALUE = \"$certification1\" size=\"25\"></td>
</tr>
<tr>
<td class=\"inhalt\">aussagekräftiges Zeugnis: </td>
<td align=\"left\"><INPUT TYPE = \"file\" NAME=\"certification2\" VALUE = \"$certification2\" size=\"25\"></td>
</tr>
</table>
<p align=\"center\">
<br>
<INPUT TYPE=\"submit\" VALUE=\"Bewerbung senden\">
</p><br>
</td>
</tr>
</table>";
};
/* Print all informations for the user. */
Function Print_Applicant ($uid, $status) {
$result = mysql_query("SELECT * FROM care_applicant WHERE uid = '".$uid."';");
while($row = mysql_fetch_assoc($result)){
echo "<br><div align=\"center\" class=\"inhalt\"><b>". $status ."</b></div><br><br>";
$status = "";
echo "<TABLE align=\"center\" BORDER = 0 CELLPADDING = 2 CELLSPACING = 2>";
echo "<TR><TD VALIGN=\"top\" class=\"inhalt\">";
echo "Ihre Angaben: ";
echo "</TD>";
echo "<TD class=\"inhalt\">";
echo "<b>Vorname: </b> ". $row['first_name'];
echo "<br><b>Nachname: </b> ". $row['last_name'];
echo "<br><b>Strasse: </b> ". $row['street'];
echo "<br><b>PLZ und Ort: </b> ". $row['town'];
echo "<br><br><b>Telefon: </b> ". $row['phone'];
echo "<br><b>E-Mail: </b> ". $row['mail'];
echo "<br><br><b>Abschluß: </b> ". $row['education'];
echo "<br><b>Ausbildung: </b> ". $row['vocational'];
echo "<br><br><b>weiter Informationen:</b><br><br>". $row['info'];
echo "<br><br><br></TD></TR>";
echo "</TABLE>";
}
};
/* The main loop. Call functions based on the value of $state, which gets set via a hidden INPUT TYPE. */
switch($state):
case "";
Applicant_Form($state, $uid);
break;
case "Commit_Save";
Commit_Save($first_name, $last_name, $street, $town, $phone, $mail, $personalrecord, $education, $vocational, $conclusiondocument, $info, $photo, $certification1, $certification2);
break;
case "Print_Applicant";
Print_Applicant($uid, $status);
endswitch;
?>
Es grüßt euch da Maddin!electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
So sollte es richtig lauten, wenn man Datein mitschickt:
Zitat von Seven Secrets
PHP-Code:<form enctype='multipart/form-data' action='index.php?inhalt=applicant' method='POST'>
-
19.12.05 14:24 #3
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Habe ich geändert! Nur leider haut es mit dem upload nicht hin! Wo liegt dann der Fehler?
electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
In welchem Verzeichnis liegt die php datei?PHP-Code:
move_uploaded_file($_FILES['$personalrecord']['tmp_name'], '/homepages/43/d95496899/htdocs/care/apliccant/');
Wenn in dem Verzeichnis das Verzeichnis homepages/43/.... usw liegt musst du den ersten / weglassen also :
ausser dem steht bei dirPHP-Code:move_uploaded_file($_FILES['$personalrecord']['tmp_name'], 'homepages/43/d95496899/htdocs/care/apliccant/');
Variablen in Anführungszeichen zu schreiben kann man sich sparen aber bei dem strich nicht:PHP-Code:rename(".$personalrecord.", ".$first_name.-.$last_name.-personalrecord");
Ausserdem wuerde ich die erst hochladen und dann umbenennen.PHP-Code:rename($personalrecord, $first_name."-".$last_name."-personalrecord");
-
19.12.05 15:11 #5
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Okay, dann wohl so und in der Reihenfolge:
Wenn du mir schreibst:PHP-Code:move_uploaded_file($_FILES['$personalrecord']['tmp_name'], 'homepages/43/d95496899/htdocs/care/apliccant/');
rename($personalrecord, $first_name."-".$last_name."-personalrecord");
Heißt das für mich, das der Upload bei meinem Script noch gar nicht erfolgt ist. Oder sehe ich das falsch?In welchem Verzeichnis liegt die php datei?electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
Nein, eigentlich wollte ich damit fragen in welchen Verzeichnis die PHP datei liegt.
Ich meine Vieleicht ist ja das Verzeichnis in das die Datei soll falsch angegeben.
PHP sollte auch eine Fehlermeldung ausgeben.
-
19.12.05 15:46 #7
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
also die applicate.php liegt unter: homepages/43/d95496899/htdocs/care dorthin geht auch die Domain! Aber slebst in diesem Verzeichnis kommen keine Datein an. Das Script solle die datein aber in dem unterverzeichnis applicant speichern.
electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
Hallo,
ich bin zwar kein Held in PHP, aber warum nicht einfach mit:
MfG TabukPHP-Code:move_uploaded_file($_FILES['personalrecord']['tmp_name'],"homepages/43/d95496899/htdocs/care/apliccant/".$first_name."-".$last_name."-personalrecord.txt");
Es gibt Besserwisser,die niemals begreifen,dass man recht haben und ein Idiot sein kann.
(Martin Kessel)
-
Hallo,
ein weiterer Fehler der mir noch aufgefallen ist, ist dass es nicht so,
sondern soPHP-Code:move_uploaded_file($_FILES['$conclusiondocument']['tmp_name']
heißen muss.PHP-Code:move_uploaded_file($_FILES['conclusiondocument']['tmp_name']
mfg
forsterm
Beitrag No: 600Geändert von forsterm (19.12.05 um 16:20 Uhr)
Wie man Fragen richtig stellt
Wichtig: Bitte markiert eure beantworteten Fragen als "erledigt" (links unten auf "Erledigt" klicken).
__________________
.:Mitglied #26 des 1. offiziellen Sven Uwe Fan-Clubs:.
-
19.12.05 16:44 #10
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Ich habe gerade in einem Tutorial gelsen, das die Datei auf dem Server mit diesem Script ankommt, jedoch nur als Temporäre Datei und bei nicht unmittelbarer Verarbeitung sofort wieder gelöscht wird. Somit müßte man sie ja vom Temprären Platz auf dem server noch kopieren, oder? Dies soll mit copy geschehen, nur weiß ich nicht genau, von wo nach wo ich hier was kopieren soll?
electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
Es geht auch mit copy und ohne rename.
PHP-Code:copy($_FILES['personalrecord']['tmp_name'],"homepages/43/d95496899/htdocs/care/apliccant/".$first_name."-".$last_name."-personalrecord.txt");
Es gibt Besserwisser,die niemals begreifen,dass man recht haben und ein Idiot sein kann.
(Martin Kessel)
-
19.12.05 17:05 #12
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Wenn ich das jetzt mal so annehme, wazu ist dann noch die Funktion move_uploaded_file gut? Bewirkt die dann nicht das selbe wie kopie? oder soll ich mir einfach das rename sparen und durch copy ersetzen?
electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
19.12.05 17:59 #13
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Anderst gefragt, kann es sein, das beim Neuladen des Scripts dietemprären Datein schon gelöscht sind, bevor sie bearbeitet werden?
electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
-
Ich glaube, das du die beste Antwort hier findest:
Wohin mit dem move_uploaded_file?
MfG TabukEs gibt Besserwisser,die niemals begreifen,dass man recht haben und ein Idiot sein kann.
(Martin Kessel)
-
19.12.05 18:57 #15
- Registriert seit
- Feb 2002
- Ort
- Brück (BRB)
- Beiträge
- 272
Okay, verstanden! Also ist demnach das Verschieben besser, als das kopieren, da ja somit keine Müll auf dem Server bleibt!
So, dass hätten wir geklärt. Da bei mir auf dem Server leider immer noch keine Datei ankommt habe ich es jetzt mal nach Anleitung (Tutorial von hier) versucht. Es funktioniert auch super, so lange es nicht in diesem Script mit der switch-Abfrage ist. Daher meine Frage, ob die Funktion daran Schuld sein kann, dass ich die Datei aus dem temporären Ordner nicht verschieben kann, da diese ja laut PHP-Handbuch gelöscht wird sobald der Request beendet ist. Ich habe den Verdacht, daß dies der eigentliche Fehler ist Oder liege ich da jetzt wieder falsch?electrohydraulic records - www.electrohydraulic.de - so many diffrend Sounds.
Ähnliche Themen
-
Upload-Formular
Von DaveThuet im Forum PHPAntworten: 1Letzter Beitrag: 18.11.07, 15:25 -
Formular mit Upload
Von vexx im Forum PHPAntworten: 6Letzter Beitrag: 04.04.05, 14:02 -
upload via formular
Von longstar im Forum PHPAntworten: 14Letzter Beitrag: 10.02.05, 18:03 -
Upload-Formular?
Von corsanostra im Forum PHPAntworten: 1Letzter Beitrag: 26.02.02, 22:32





Zitieren
Login






[PHP] [Codeschnipsel] ImageColor aus HTML-Farbcodierung erstellen