Formular & Bild in TXT-Datei

nvs83

Grünschnabel
Hallo,

ich möchte ein erweitertes Gästebuch programmieren. Der einzige Punkt der mir fehlt ist das schreiben in die Textdatei.

Das Formular sieht wie folgt aus:
Eingabefeld +Durchsuchen (Um ein Bild von der Festplatte zu holen)
Eingebefeld (Name)
Eingabefeld (Text)

Nun soll das ausgewählte Bild auf 32x32 Pixel verkleinert werden und das Bild auf meinen Webspace hochgeladen werden (Prüfung auf doppelte). Die daraus resultierende URL soll in eine TXT-Datei geschrieben werden. Dann ein Semikolon, dann der Name, wieder ein Semikolon, dann der Text.

Das Auslesen und Verarbeiten der Daten ist kein Thema, das habe ich bereits fertig.

Es wäre sehr nett wenn mir jemand ein Code verfassen könnte für obiges.
Bisher habe ich folgende Schnipsel:
PHP:
<?php

if (isset($_POST["name"])) {
 // Gesendete Formularangaben zusammenfügen
 $text = "name = " . $_POST["name"] . ";" .
  "message = " . $_POST["message"] . "\n";
 // Formularangaben speichern
 $file = "guestbook.txt";
 $fp = fOpen($file,"w+");
 fPuts($fp, $text);
 fClose ($fp);
 echo "<h4>Die Angaben wurden gespeichert!</h4>";
}


?>
 
Hi und herzlich Willkommen bei tutorials.de,

wenn du Code geschrieben haben möchtest, bist du in der Jobbörse wohl besser aufgehoben. Wenn du nur Hilfestellungen brauchst, bist du hier aber richtig..

Allerdings wird nicht ganz klar, wo das Problem liegt. Beim Uploaden? Dann mal hier in der Doku lesen. Bearbeitung des Bildes? Da könntest du dir mal was zur GD-Bibliothek durchlesen.

Best regards
 
Hi,

das soll kein "großer Job" sein. Ich bruchte eigentlich nur den Punkt wo/wie das Bild hochgeladen wird und die "neue" URL des Bildes zu meinem $text geschrieben wird.

Also was ich brauche sind Codeschnipsel für:
Bild hochladen
URL in Variable, damit ich nahezu diesen Code verwenden kann:
PHP:
 $text = "URL = " . $_POST["URL"] . ";" .
  "name = " . $_POST["name"] . ";" .
  "message = " . $_POST["message"] . "\n";

Und daendet dann halt mein PHP Wissen und vielleicht weiss ja jemand wie ich den Bilderupload in 1-2 Zeilen bekomme und dann die URL in eine Variable... Resize des Bildes ist evtl. gar nicht nötig, da ich die in der Anzeige auf die richtige Größe quetschen kann und wenn ich merke dass das laden zu lange dauert, jage ich IrfanView mit ner Resize Batch über das Bilder-Verzeichnis...
 
Hi,

wie du Dateien hochladen kannst, kannst du in der PHP-Doku nachlesen. Das kannst du im Prinzip so übernehmen. Den Uploadpfad kannst du selbst bestimmen, d.h. ich würde ein Unterverzeichnis des DocumentRoot anlegen (images) z.B. und dort die Bilder hinschieben. Beachte, dass für den Upload der lokale Pfad wichtig ist, nicht die Web-URL.

Best regards
 
Wenn Du die url des verarbeiteten Bildes hast, wird jene einfach per
PHP:
echo '<img src="'$url.'" alt=""/>';
in Deinen Ausgabetext eingebunden, mehr sollte nicht nötig sein.

mfg chmee
 
Hallo chmee,
Wie ich das Bild anzeige ist ja keine Frage. Ich will das Bild aber nicht anzeigen lassen. Ich will die URL des Bildes in eine Textdatei kopieren mit den weiteren Texten aus dem Formular. Jemand soll ein Bild hochladen können, seinen Namen dazu schreiben und ne Nachricht hinterlassen... Ein Gästebuch halt...

Meine Frage ist nun: Ich 1 Senden button, der 1. Das Bild hochlädt, die neue URL des Bildes in eine Textdatei schreibt und dann 3. die Texte aus den Formularfeldern dahinter.

Ich lese die Dateien hinterher Zeilen und Semikolongetrennt aus, wie eine CSV-Datei. Bild-URL;Name;Nachricht, nicht mehr, nicht weniger...
 
So Danke erstmal für die hilfreichen Tipps.

Ich habe nun das ganze sogar um einiges erweitert...

Ich habe eine Flash-Bildergallerie genommen, die Bilder und Texte aus einer XML liest. Ich speichere nun die Daten per PHP in diese XML und Tadaa... Bilder und Texte füllen die Bildergallerie. Die Flashgallerie nimmt Ihre Daten aus der photos.xml. Bilderordner heisst _pics...

Für alle die das Gleiche oder Ähnliches vorhaben:

PHP:
<?php

$dateityp = GetImageSize($_FILES['file']['tmp_name']);
if($dateityp[2] != 0)
   {

   if($_FILES['file']['size'] <  102400)
      {
      move_uploaded_file($_FILES['file']['tmp_name'], "_pics/".$_FILES['file']['name']);
      echo "Das Bild wurde Erfolgreich nach _pics/".$_FILES['file']['name']." hochgeladen";
      }

   else
      {
         echo "Das Bild darf nicht größer als 100 kb sein ";
      }

    }

else
    {
    echo "Bitte nur Bilder im Gif bzw. jpg Format hochladen";
    }


// Gesendete Formularangaben zusammenfügen
 $a = $_POST["name"];
 $b = $_POST["message"];
 $c = $_FILES['file']['name'];
 $text = '<photo desc="' . $a . ": " . $b . '" url="_pics/' . $c . '" />' . "\n" ;

 $file = "photos.xml";
 $fp = fOpen($file,"a");
 fPuts($fp, $text);
 fClose ($fp);
 echo "<h4>Die Angaben wurden gespeichert!</h4>"; 
 ?>
 <meta http-equiv="refresh" content="1; URL=http://www.GÄSTEBUCHADRESSE.html">
 
Zurück