Spielbericht mit Bilder einfügen -> ausgabe in Tabelle

  • also die tabelle hab ich erstellt aber was ich sonst machen muss da hab ich kein schimmer


    mit dem datum hab ich ne andere variante gefunden:

    in der datenbank datum als DATE deklarieren...dann wollte ich das umstellen und es funktionniert nicht:

    Quellcode

    1. SELECT
    2. DATE_FORMAT(`datum`, '%d.%m.%Y') AS `datum`
    3. FORM
    4. `tabelle`
  • die ganzen time und date funktionen waren eher als generelle info gedacht, was alles möglich ist..
    aber ist auch für die MySQL Version 5, wohingegen in den meisten Fällen noch MySQL4 benutzt wird

    Hab nochmal was in Deutsch und für Version 4 gefunden:
    http://dev.mysql.com/doc/refman/4.0/de/date-and-time-functions.html

    z.B. um alles von den letzten 2 wochen auszugeben

    Quellcode

    1. SELECT spalte FROM tabelle WHERE TO_DAYS(NOW()) - TO_DAYS(datum_spalte) <= 14;


    wie groß ist deine datenbank denn schon?
    generell solltest du lieber den spaltentyp über phpMyAdmin o.Ä. in DATE / DATETIME ändern und die einträge nachbessern als weiterhin mit varchar zu arbeiten
  • also erstmal änderst du mit phpMyAdmin den spaltentyp von datum von VARCHAR in DATE

    Nun ist zu beachten, dass das Dateformat folgendermaßen aussieht: YYYY-MM-DD
    du willst die daten aber sicherlich so eingeben: DD.MM.YYYY
    das erläutere ich weiter unten im code

    dann hast du meine änderungen von seite1 noch nicht umgesetzt:
    http://www.easy-coding.de/spielbericht-mit-bilder-einfuegen-ausgabe-in-tabelle-t666.html#2350

    im html formular brauchst du unterschiedliche namen für die uploads.
    Und zusätzlich noch ein feld um die anzahl der bilder zu übergeben

    Quellcode

    1. <input type="file" name="datei1" /><p>
    2. <input type="file" name="datei2" /><p>
    3. <input type="file" name="datei3" /><p>
    4. <input type="file" name="datei4" /><p>
    5. <input type="file" name="datei5" /><p>
    6. <input type="hidden" name="anzahl_dateien" value="5" />



    im php formular speicherst du dann erst die daten und danach alle bilder durch eine schleife

    Quellcode

    1. //Daten eintrag erstellen
    2. $datum = explode('.', $_POST['datum']); // hier wird die umwandlung von DD.MM.YYYY vollzogen
    3. mysql_query("INSERT INTO Daten (id,spiel,datum,typ,ergebnis,zuschauer,gaeste,comment)
    4. VALUES ('$_POST[id]', '$_POST[spiel]', '$datum[3]-$datum[2]-$datum[1]', '$_POST[typ]', '$_POST[ergebnis]', '$_POST[zuschauer]', '$_POST[gaeste]', '$_POST[comment]'); ");
    5. //zuletzt erzeugte ID ermitteln
    6. $data_id = mysql_insert_id();
    7. //Jetzt werden alle Bilder gespeichert
    8. for($i=1; $i<=$_POST['anzahl_dateien']; $i++) {
    9. if (isset($_FILES['datei'.$i]) and ! $_FILES['datei'.$i]['error'])
    10. {
    11. $pfad_zur_datei = $_FILES['datei'.$i]['tmp_name'];
    12. $data = addslashes(fread(fopen($pfad_zur_datei, "r"), filesize($pfad_zur_datei)));
    13. mysql_unbuffered_query("INSERT INTO Bilder (id, daten_id , bild, filetype)
    14. VALUES ('','". $data_id ."','". $data ."', '".$_FILES['datei'.$i]['type']."')");
    15. }
    16. }
    Alles anzeigen