madmax00 Geschrieben 16. Februar 2006 Teilen Geschrieben 16. Februar 2006 Hallo Leute, Wer kann mir helfen? Ich habe eigentlich von kurzen angefangen PHP und MySQL zu lernen. Ich kann schon einiges, aber bei einer Sache bin ich stehen geblieben und komme gar nicht mehr weiter. Und jetzt zu Sache: Ich möchte in einer MySQL-Datenbank durch PHP-Code einen beliebigen Text und link fürs Bild zu speichern, aber es funktioniert nicht. (Wie immer) <?php $uploaddir = "D:/program files/xampp/htdocs/images/"; ?> <form action="index_r.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000"> <table> <tr> <td>bild</td> <td><input type="file" name="bild"></td> </tr> <tr> <td>Inhalt der Nachricht</td> <td><textarea name="content" cols="50" rows="20"></textarea></td> </tr> <tr> <td><input type="submit" value="speichern"></td> </tr> </table> </form> <?php $insert_sql="INSERT INTO angebot SET"; $insert_sql.="', content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES); if(!empty($_FILES['bild']['name'])){ $insert_sql.="', bild='/images/".$_FILES['bild']['name']; } if(!empty($_FILES['bild']['name'])){ $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } ?>[/PHP] In meiner Datenbank ist „id“ als „auto_increment“ definiert. Wo hab ich den Fehler gemacht? MfG Max Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 16. Februar 2006 Teilen Geschrieben 16. Februar 2006 Hi Max, $insert_sql="INSERT INTO angebot SET"; $insert_sql.="', content='".htmlentities($_REQUEST['content'],[/PHP] sieht hier nach einem Syntax fehler im SQL aus. Gruß, Markus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
madmax00 Geschrieben 17. Februar 2006 Autor Teilen Geschrieben 17. Februar 2006 sieht hier nach einem Syntax fehler im SQL aus. kann mier auch vorstellen, aber welche Fehler? ich sehe eigentlich keinen MfG max Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 17. Februar 2006 Teilen Geschrieben 17. Februar 2006 kann mier auch vorstellen, aber welche Fehler? ich sehe eigentlich keinen MfG max Ich aber: // das hier $insert_sql="INSERT INTO angebot SET"; $insert_sql.="', content='".htmlentities($_REQUEST['content'], // ergibt: INSERT INTO angebot SET', content=' usw. [/PHP] Lass dir doch mal das generierte SQL-Statement ausgeben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 17. Februar 2006 Teilen Geschrieben 17. Februar 2006 Nööp, ich habe Enrico T.s Kommentar übersehen... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
.vash Geschrieben 17. Februar 2006 Teilen Geschrieben 17. Februar 2006 Im übrigen ist Deine Seite verwundbar für SQL Injections: es ist keine gute Idee die Daten einer Seite direkt in ein SQL Statement zu setzen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FMG Geschrieben 18. Februar 2006 Teilen Geschrieben 18. Februar 2006 Ich möchte in einer MySQL-Datenbank durch PHP-Code einen beliebigen Text und link fürs Bild zu speichern, aber es funktioniert nicht. Ganz einfach, du hast du Insert-Syntax mit der Update-Syntax verwechselt... Die Syntax für Insert ist: INSERT INTO TabellenName (FeldName1, FeldName2, FeldName3) VALUES (InhaltFuerFeld1, InhaltFuerFeld2, InhaltFuerFeld3); Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 18. Februar 2006 Teilen Geschrieben 18. Februar 2006 Ganz einfach, du hast du Insert-Syntax mit der Update-Syntax verwechselt... Nur weil man etwas nicht nutzt oder kennt, heißt noch lange nicht, dass es prinzipiell nicht funktioniert. 7.4.2. INSERT-Syntax INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tabelle [(spalten_name,...)] VALUES (ausdruck,...),(...),... oder INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tabelle [(spalten_name,...)] SELECT ... oder INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tabelle SET spalten_name=ausdruck, spalten_name=ausdruck, ... Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 20. Februar 2006 Teilen Geschrieben 20. Februar 2006 Ich weiß nun nicht, ob das so Absicht ist aber irgendwie vermisse ich da ein mysql_connect() und nach dem SQL- String etwas wie mysql_db_query oder ein select_db() mit einem mysql_query(). Also es wird keine Verbindung erstellt und der SQL- String wird gar nicht erst ausgeführt. Falls das nun doch irgendwo in Deinem Script steht, dann kannst du übrigens auch mit der Funtkion mysql_error() Dir den SQL- Fehler anzeigen lassen. In diesem Fall sollte der Dir sagen, dass da ein Hochkommata fehlt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
madmax00 Geschrieben 20. Februar 2006 Autor Teilen Geschrieben 20. Februar 2006 Zitat von JARAZ INSERT [LOW_PRIORITY | DELAYED] [iGNORE] [iNTO] tabelle SET spalten_name=ausdruck, spalten_name=ausdruck, ... Jaraz, ich habe doch gleiche, aber... $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])){ $insert_sql.="' bild='/intranet/images/".$_FILES['bild']['name']; } if(!empty($_FILES['bild']['name'])){ $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } $insert_sql.="', content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES);[/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 21. Februar 2006 Teilen Geschrieben 21. Februar 2006 Die Syntax ist aber INSERT INTO Tabelle (Spalten) VALUES (Werte); Also auf Dein Beispiel: $insert_sql = "INSERT INTO angebot (bild, content) VALUES ('/intranet/images/".$_FILES['bild']['name']."', '".htmlentities($_REQUEST['content']."');"; [/PHP] Nebenbei empfiehlt sich statt $_REQUEST[] entweder $_POST[] oder $_GET[]. Abgesehen davon fehlten bei Dir immernoch Hochkommata bei den Werten. Du willst Strings in die Felder schreiben. Strings werden aber immer von " oder ' eingeschlossen. Wenn Du zwar am Anfang des Strings mit dem Wert zwar ein ' machst aber nicht am Ende, bekommst Du natürlich eine Fehlermeldung angezeigt, wenn Du mysql_error() benutzt hättest. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schlati Geschrieben 21. Februar 2006 Teilen Geschrieben 21. Februar 2006 Die Syntax ist aber INSERT INTO Tabelle (Spalten) VALUES (Werte); Lies doch nochmal das Posting von Jaraz. @madmax: Der Fehler liegt wohl eher an dem nicht richtigen $insert_sql. $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])){ $insert_sql.="' bild='/intranet/images/".$_FILES['bild']['name']; [/PHP] Besser wäre... [php] $insert_sql.="' bild='/intranet/images/".$_FILES['bild']['name']."'"; Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 22. Februar 2006 Teilen Geschrieben 22. Februar 2006 Gelesen habe ich es und ich finde es unheimlich toll, dass MySQL das so unterstützt. Wer braucht schon eine SQL- Syntax, die zu anderen DBMS portabel ist, geschweigedenn ANSI SQL. http://www.issociate.de/board/post/161583/Problem_beim_L%C3%B6schen_und_Wiedereinf%C3%BCgen.html Das wichtige Zitat da: Johannes Vogel wrote: >>> insert into phamily_freunde set pyfr_SHB_ID_benutzer =3D 671, >>> pyfr_SHB_ID_freund =3D 2 >> >> Das ist aber kein gültiger Insert Syntax. Das ist eine Mischung aus = >> Update und Insert. > > > Humbug. Das vorliegende Insert-Statement ist korrekt. Die UPDATE-artige INSERT-Syntax mit SET ist, so schön sie auch sein mag= , eine MySQL-spezifische Erweiterung und nicht ANSI SQL. Die Syntax hat gegenüber INSERT INTO tabelle (fieldlist) VALUES (valuelist) den Vorteil das auch bei Zuweisungen an viele Spalten die Zuordnung Werten zu Spalten immer sofort klar ist während man bei der ANSI Syntax nur durch Abzählen in fieldlist und valuelist herausbekommt welcher Wert zu welcher Spalte gehört. Noch schlimmer wird es wenn das INSERT Statement ganz ohne fieldlist daher kommt ... Nachteil der MySQL-Syntax ist aber eben das sie MySQL-spezifisch ist und von anderen SQL Dialekten nicht unterstützt wird. Wenn man schon von Grund auf neu lernt, kann man sich ruhig mal daran halten um dafür dann später auch mit anderen DBMS zurecht zu kommen. Aber ist natürlich jedem selbst überlassen, ob er sich nun lieber an Programmierstandards hällt oder lieber sein eigenes Süppchen kocht. Wird nur dumm, wenn MySQL vieleicht auch mal noch weiter auf SQL-92 angepasst wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
freq.9 Geschrieben 22. Februar 2006 Teilen Geschrieben 22. Februar 2006 <?php $insert_sql = "INSERT INTO angebot SET"; $insert_sql .= " content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES)."'"; if(!empty($_FILES['bild']['name'])){ $insert_sql.=", bild='/images/".$_FILES['bild']['name']."'"; } if(!empty($_FILES['bild']['name'])){ $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } ?>[/php] wobei ich da noch mysql_real_escape_string() bzw. mysql_escape_string() empfehlen würde. Und wie schon zuvor gesagt würde, nutz lieber $_POST dafür ($_GET geht nicht, weils ja nen Upload ist!) Ihr müsst zwischendurch auch auf die Leerzeichen etc. schauen. Aber ich finde es interessant, wie lange ihr doch braucht um jemandem zu helfen. Statt dem immer zu sagen, was er denn anders machen könnte, oder sonstwas solltet ihr ihm besser mal helfen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
madmax00 Geschrieben 22. Februar 2006 Autor Teilen Geschrieben 22. Februar 2006 Dank alle und nach einigen Änderungen wird das Bild in Imagedatei , aber in der Datenbank wird nichts gespeichert. Dann komme ich noch mal zu Sache: Ich habe ein Datenbank mit drei Spalten(id(int, auto_increment), bild(text), content(text)). Jetzt sieht bei mir so aus: <?php $uploaddir = "D:/program files/xampp/htdocs/images/"; ?> <form action="index_r.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000"> <table> <tr> <td>bild</td> <td><input type="file" name="bild"></td> </tr> <tr> <td>Inhalt der Nachricht</td> <td><textarea name="content" cols="50" rows="20"></textarea></td> </tr> <tr> <td><input type="submit" value="speichern"></td> </tr> </table> </form> <?php $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])){ $insert_sql.=" bild='/images/".$_FILES['bild']['name']."'"; } if(!empty($_FILES['bild']['name'])){ $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } $insert_sql.=", content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES)."'"; ?>[/PHP] Ich kann immer noch nicht verstehen, was ich falsch mache. MfG max:hells: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 23. Februar 2006 Teilen Geschrieben 23. Februar 2006 Also Punkt Nummer eins wäre wohl, dass da wohl nur was passieren soll, wenn das Formular abgeschickt wurde. Bei Dir wird direkt schon beim ersten Aufrufen der Seite nen SQL- Statement fertig gemacht. Zudem kommt, dass Du immer noch keine Verbindung zur Datenbank herstellst. Also den Ganzen php- Teil am Ende so abändern: <?php $uploaddir = "D:/program files/xampp/htdocs/images/"; ?> <form action="index_r.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000"> <table> <tr> <td> bild </td> <td> <input type="file" name="bild"> </td> </tr> <tr> <td> Inhalt der Nachricht </td> <td> <textarea name="content" cols="50" rows="20"></textarea> </td> </tr> <tr> <td> <input type="submit" value="speichern" name="btnSpeichern"> </td> </tr> </table> </form> <?php // Wenn der Button speichern gedrueckt wurde if (isset($_POST['btnSpeichern'])) { $strHost = "Server"; // Sollte locahlhost sein $strUsername = "Benutzername"; $strPW = "Passwort"; $strDBName = "Datenbankname"; $strServer = mysql_connect ($strHost, $strUsername, $strPW) or die("Verbindung zur Datenbank fehlgeschlagen"); // Verbindung zur Datenbank herstellen $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])) { $insert_sql.=" bild='/images/".$_FILES['bild']['name']."'"; } if(!empty($_FILES['bild']['name'])) { $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } $insert_sql.=", content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES)."';"; $Ergebnis = mysql_db_query($strDBName, $insert_sql, $strServer) or die (mysql_error()); // SQL- Statement ausführen und bei einem Fehler die MySQL- Fehlermeldung ausgeben } ?> [/PHP] Das sollte nun wirklich als Tipp reichen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
freq.9 Geschrieben 23. Februar 2006 Teilen Geschrieben 23. Februar 2006 Ui nun werden wir auch noch altmodisch. mysql_db_query This function is deprecated, do not use this function. Use mysql_select_db() and mysql_query() instead. Du verbindest zum Server aber selektierst keine Datenbank generell. Du selektierst sie erst beim Eintragen in die Datenbank. Das ist nicht so unbedingt toll. Dafür musst du noch mysql_select_db() nehmen. Du solltest dich mit den Datentypen ein wenig auseinandersetzen. Wenn dieses "str" vor deinen Variablen "string" heissen soll, dann kann ich dir sagen, dass "$strServer" ein link resource beinhaltet und keinen String. <?php // Wenn der Button speichern gedrueckt wurde if (isset($_POST['btnSpeichern'])) { $strHost = "Server"; // Sollte locahlhost sein $strUsername = "Benutzername"; $strPW = "Passwort"; $strDBName = "Datenbankname"; // Verbindung zur Datenbank herstellen $strServer = mysql_connect($strHost, $strUsername, $strPW) or die("Verbindung zur Datenbank fehlgeschlagen"); $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])) { $insert_sql.=" bild='/images/".mysql_escape_string($_FILES['bild']['name'])."'"; } if(!empty($_FILES['bild']['name'])) { $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } $insert_sql.=", content='".mysql_escape_string($_REQUEST['content'])."'"; // SQL- Statement ausführen und bei einem Fehler die MySQL- Fehlermeldung ausgeben $Ergebnis = mysql_query($insert_sql, $strServer) or die (mysql_error()); } ?>[/php] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 23. Februar 2006 Teilen Geschrieben 23. Februar 2006 Stimmt, ich könnte da auch ein hdl für Handle nehmen aber wozu? Das dient nur für mich zur Orrientierung. Ich könnte natürlich auch ein mysql_select_db() abschicken und dann nur mysql_query() aber auch dass ist nicht notwenig, wenn ich mysql_db_query nutzen möchte. Im übrigen solltest Du dich selbst, wie Du hier schon geschrieben hast, auf Deinen Lösungsvorschlag konzentrieren, anstatt nun auf mich loszugehen. Denn in Deinem Vorschlag wurde immer noch das SQL- Statement gefüllt, bevor das Formular abgeschickt wurde und Du auch nicht bemerkt hast, dass keine Datenbankverbindung besteht. Bitte bleibe bei Deinen Leisten bevor Du nun auf mir rumhacken willst. Im Übrigen funktioniert Dein letztes Beispiel nicht, da keine Datenbankverbindung ausgewählt wurde. Aber das ist nun ja kein Argument gegen mysql_query(). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
freq.9 Geschrieben 23. Februar 2006 Teilen Geschrieben 23. Februar 2006 Es dient der Orientierung? Ihr müsst auch mal dran denken, dass auch mal andere euren Code sehen und nicht immer die Lust haben sich durch euren kompletten Code zu wursten. Deshalb solltet ihr nicht für euer Verständnis programmieren, da ihr euren Code versteht, aber nicht jeder andere. Ich kann nun natürlich auch mit $samkpcaseju4w09t34 Variablen arbeiten. Auch kein Problem. Wenn man nun deine Definierung von $strServer gesehen hätt, hätte hier bestimmt keiner gewusst was da drin steht. ..., dass keine Datenbankverbindung besteht. Es besteht eine Datenbankverbindung. Es wurde eine Verbindung zum Db-Server aufgebaut, aber es wurde keine Datenbank ausgewählt. Okay ich habe das mysql_select_db wirklich vergessen. Das kam aber auch daher, da ich das heut Morgen geschrieben habe, wo ich sowieso schon im Zeitdruck war, aber naja. Mein Fehler. Was du nun für eine Funktion nutzt ist egal, aber du musst sehen, dass diese Funktion "deprecated" ist und somit schon bald aus den PHP-Versionen rausfliegen wird, da Zend/PHP angekündigt hat Codeoptimierungen vorzunehmen sowie Aliases und deprecated-Funktionen zu entfernen. Denn in Deinem Vorschlag wurde immer noch das SQL- Statement gefüllt, bevor das Formular abgeschickt wurde ... Hä? Es wird doch zuvor if(isset(...)) abgefragt, wie sollte denn dann das ganze abgefragt werden. Wenn du nun meinst, dass du nen Notice bekommst, dann solltest dir vllt. überlegen das $_POST['btnSpeichern'] mit einem @ versehen, denn lediglich die Variable ist nicht initialisiert. <?php // Wenn der Button speichern gedrueckt wurde if (isset($_POST['btnSpeichern'])) { $strHost = "Server"; // Sollte locahlhost sein $strUsername = "Benutzername"; $strPW = "Passwort"; $strDBName = "Datenbankname"; // Verbindung zum Datenbank-Server herstellen $strServer = @mysql_connect($strHost, $strUsername, $strPW) or die("Verbindung zur Datenbank fehlgeschlagen"); // Datenbank auswählen @mysql_select_db($strDBName) OR die(mysql_error()); $insert_sql= "INSERT INTO angebot SET"; if(!empty($_FILES['bild']['name'])) { $insert_sql.=" bild='/images/".mysql_escape_string($_FILES['bild']['name'])."'"; } if(!empty($_FILES['bild']['name'])) { $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } $insert_sql.=", content='".mysql_escape_string($_REQUEST['content'])."'"; // SQL- Statement ausführen und bei einem Fehler die MySQL- Fehlermeldung ausgeben $Ergebnis = mysql_query($insert_sql) or die (mysql_error()); } ?>[/php] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
~Hawkeye~ Geschrieben 23. Februar 2006 Teilen Geschrieben 23. Februar 2006 <?php $insert_sql = "INSERT INTO angebot SET"; $insert_sql .= " content='".htmlentities($_REQUEST['content'], ENT_NOQUOTES)."'"; if(!empty($_FILES['bild']['name'])){ $insert_sql.=", bild='/images/".$_FILES['bild']['name']."'"; } if(!empty($_FILES['bild']['name'])){ $test = move_uploaded_file($_FILES['bild']['tmp_name'], $uploaddir . $_FILES['bild']['name']); } ?>[/php] wobei ich da noch mysql_real_escape_string() bzw. mysql_escape_string() empfehlen würde. Und wie schon zuvor gesagt würde, nutz lieber $_POST dafür ($_GET geht nicht, weils ja nen Upload ist!) Ihr müsst zwischendurch auch auf die Leerzeichen etc. schauen. Aber ich finde es interessant, wie lange ihr doch braucht um jemandem zu helfen. Statt dem immer zu sagen, was er denn anders machen könnte, oder sonstwas solltet ihr ihm besser mal helfen. Es ging um das da und nicht um die von mir bereits korregierte Fassung. Meine Schreibweise und Variablenbenamsung ist übrigens durch die Konventionen in meiner Firma entstanden also mache ich mir keine Gedanken darum, dass Du damit nicht klar kommst. Im Übrigen initiiere ich Variablen auch in php vor und dahinter steht immer ein Kommentar, was denn später in der Variablen stehen wird. Das war nur ein Codeauszug aus einem meiner Projekte. Ich denke nicht, dass die Leute von php aus allen vorhandenen Versionen soetwas wie mysql_db_query rausnehmen werden und wenn doch dann muss ich fragen ob die ganzen Hoster auch diese geänderte Version beziehen wollen. Wenn man sich ansieht wie lange es dauert, bis ein großteil auf php5 umgestellt hat bzw. immer noch umstellt mache ich mir auch dann absolut keine Sorgen. Mit der Version mit der ich arbeite und die auch noch von Hostern eingesetzt wird, funktioniert mysql_db_query und diese Funktion ist nicht so exotisch, dass andere sie nicht erkennen bzw. deren Funktion verstehen können. Deswegen habe ich kein Problem damit das auch weiterhin einzusetzen. Da es den anschein macht, dass Du gerade richtig den Durchblick hast, ziehe ich mich Mal aus diesem Thread zurück. Mitlerweile 7 Jahre php Erfahrung (und nebenbei auch in anderen Script- und Programmiersprachen) scheinen nicht zu reichen um mit Dir diskutieren zu können. Oder ich habe einfach keine Lust ,-( Hoffe die Vorschläge haben den Threadersteller erreicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
madmax00 Geschrieben 23. Februar 2006 Autor Teilen Geschrieben 23. Februar 2006 Danke Leute, es hat funktionier. zitat zu Hawkeye Zudem kommt, dass Du immer noch keine Verbindung zur Datenbank herstellst. habe ich auch gehabt: <?php include("./connect.php"); ?>[/PHP] ich hab nur Teil des Codes eingegeben. Da habe ich sofort noch eine Frage: wenn ich die Seite, aus welcher ich das Bild und den Text hochgeladen habe, noch mal aktualisiere, wird das gleiches Bild und Text noch einmal in der Datenbank gespeichert. Mit welcher Funktion kann ich temporäres Verzeichnis löschen, damit es bei neuer Aktualisierung nichts mehr gespeichert wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
freq.9 Geschrieben 24. Februar 2006 Teilen Geschrieben 24. Februar 2006 Hawkeye, du bist ja nen lustiger Vogel. Ich habe anscheind weniger Erfahrung wie du und du lässt dich durch mich aus dem Rennen kicken? Ich kenn mich auch in so einigen Programmier- und Skriptsprachen aus, nur versuche ich meinen Code so zu schreiben, dass Dritte den auch verstehen und nicht jeden Müll des Codes haben müssen. Wenn dein Unternehmen solche Richtlinien darstellt, dann wirds seine Gründe haben oder keine Ahnung haben. Die Funktion mysql_db_query ist halt alt und auch umständlich, also was macht ihr da son Trubel drum? Willst du jedes mal den Namen der DB mitschleppen? Und was ist, wenn er zwischendurch geändert wird? Das ists schlecht. @ Madmax: Prüfe doch einfach ob die Datei schon vorhanden ist und/oder setze eine Session/Cookie mit dem Dateinamen. Nur ists ein wenig dumm, wenns zu Problemen kommt und ne Session/Cookie wird gesetzt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
madmax00 Geschrieben 24. Februar 2006 Autor Teilen Geschrieben 24. Februar 2006 zitat zu freq.9 @ Madmax: Prüfe doch einfach ob die Datei schon vorhanden ist und/oder setze eine Session/Cookie mit dem Dateinamen. Nur ists ein wenig dumm, wenns zu Problemen kommt und ne Session/Cookie wird gesetzt. wie soll ich das machen? Habe, erlich zu sagen, keine Anung. MfG max:rolleyes: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
freq.9 Geschrieben 24. Februar 2006 Teilen Geschrieben 24. Februar 2006 wie soll ich das machen? Habe, erlich zu sagen, keine Anung. MfG max:rolleyes: <?php /* ... */ if(!file_exists($uploaddir.$_FILES['bild']['name'])) { // das zeug mit move_uploaded_file } /* ... */ ?>[/php] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.