![]() |
Bild Upload Hallo Leute. Im Zuge eines Newssystems für mein Forum brauche ich ein Bild Upload Skript. Ich habe mich auch jetzt soweit hingesetzt, komme aber zu Problemen. Wenn ich ein Bild hochlade kommt ständig "Datei bereits vorhanden. Bitte anderen Namen angeben." Hier ist mal der php Code: PHP-Code: Code: <TR> |
Negativ, es hat sich in Sachen Upload seit Version 4.1 und 4.2 einiges getan. Seit Version 4.1 werden die Daten ausser im Array $HTTP_POST_FILES auch im Array $_FILES gespeichert. Seit Version 4.2 steht register_globals von Haus aus auf off, somit werden die Variablen die du verwendest nicht mehr gesetzt. Probiers mal mit folgendem PHP-Code: |
Zitat:
Du setzt Funktionen ein die es erst ab PHP5 geben wird, und emulierst sie ggf., aber hier gehst du einen Schritt zurück und nutzt Variablen die es in späteren Versionen womöglich gar nicht mehr gibt. (jedenfalls machen sie nach einführung der Superglobalen immer weniger Sinn) Was steckt da für eine Logik hinter?? Eher würde ich den Schritt gehen und die Versionen überprüfen und die Superglobalen Variablen falls nötig selbst setzen. Wobei sich bei mir die Frage stellt, wer den überhaupt noch PHP < 4.1 einsetzt. |
@DaddyCool Schon mal danke für deine Hilfe, aber es klappt nicht so recht. Es kommt keine Meldung. Es wird nix ausgegeben. Und das Bild wird in dem Ordner auch nicht gespeichert. Fehlermeldung kommt auch nicht ... |
Also 'nen kleinen Fehler habe ich gerade gefunden. Ich habs enctype="multipart/form-data" im Formular vergessen. Doch es klappt immernoch nicht recht. Es ist wie beim ersten Mal und zwar wird bei jedem Bild ausgegeben, dass das Bild schon existiert, obwohl keine Datei in dem Ordner ist. Zitat:
|
bau doch mal ein print_r($_FILES); ein und sag uns was er ausgibt. Poste nochmal deinen neuen HTML Code |
Also dieses print_r gibt jetzt das aus. Damit kann ich absolut nix anfangen. Zitat:
Code: <FORM NAME=gb enctype=multipart/form-data METHOD=\"POST\" ACTION=\"$PHP_SELF?poster=".$db1['EID']."\"> Code: <INPUT TYPE=hidden NAME=MAX_FILE_SIZE value=250000> |
PHP-Code: http://www.dclp-faq.de/q/q-formular-upload-php4.html |
PHP-Code: |
mmh, ich seh in meinem Code grad nen Fehler. Such mal Code: if (!file_exists($filepath.$_FILES['name'])) Code: if (!file_exists($filepath.$_FILES['picture']['name'])) |
Hey jetzt hat das geklappt. Vielen Dank! :D |
Arks jetzt hab ich noch eine klitze kleine Sache. Ich muss jetzt noch den Namen des Bildes in eine SQL Tabelle eintragen. Habs mit $_FILES[picture][name] versucht. Aber da wird nur Array [name] eingetragen. Mehr nicht. Wie bekomm ich denn jetzt den Bild Namen (mit Endung) eingetragen? Ich brauch ja im Prinzip nur den Namen der Datei. Den Rest kann ich wohl :D |
der name der datei wird auch in der variable gespeichert: $HTTP_POST_FILES['file']['name'] das sollte eigendlich funtzen. (wobei 'file' der name der feldes ist mit dem du das bild auswählst bevor du es hochlädst.) |
Wenn das $_FILES[picture][name] innerhalb von Häckchen ist (z.B. mysql_query("INSERT INTO upload (dateiname) VALUES ('$_FILES[picture][name]')") ) dann mach daraus {$_FILES[picture][name]} Schöner wäre es aber so: mysql_query("INSERT INTO upload (dateiname) VALUES ('".$_FILES['picture']['name']."')") |
ich schreibe meine sql befehle immer so: mysql_query("INSERT INTO `upload` (`dateiname`) VALUES ('".$HTTP_POST_FILES['picture']['name']."')"); |
Jap, dass hat geklappt. Vielen Dank für eure Hilfe, Jungs! |
Ich hab das zwar auch schon in zahlreichen wBB Boards geschrieben, aber vielleicht kann mir ja hier jemand helfen. ---------------------- Hallo. Ich knobel seit längerem an einem Problem. Und zwar habe ich einen User 'Nachrichten' bei dem möchte ich immer ein Bild in den Beitrag eingeblendet haben. Es ist je nach Beitrag ein anderes Bild. Der User ist eine Art Newssystem. Der Beitrag wird in einem externen ACP erstellt und im Portal und im Forum wird ein Thema erstellt. Es wird immer ein Bild zur entsprechenden Nachricht hochgeladen und der Name des Bildes wird in einer Tabelle abgespeichert. Soviel zur Hintergrundinformation. Das für den User Nachrichten eine andere thread_postbit ausgegeben wird habe ich mittels Templateskripting schon hinbekommen allerdings scheitere ich bei der Ausgabe des Bildes. Ich habe bereits versucht in der global.php das Bild auszurufen PHP-Code: Ich hoffe ich habe mich klar genug ausgedrückt. Es ist schwer zu erklären. Jedes Bild gehört ja einer bestimmten Nachricht an und jede Nachricht hat in der Tabelle 'news_content' auch eine threadid die identisch mit der aus dem Forum ist. Daher muss ich ja WHERE threadid = '".$thread['threadid']."' vergleichen. Nur noch kurz zur Erklärung. Ich hoffe mir kann jemand helfen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:34 Uhr. |