upload

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • upload

    hallo leute!
    ich habe einen upload per php erstellt, wo die butzer ihre bilder hochladen können und ein komentar dazu verfassen können.
    die datein werden in einem extra dafür vorgesehenen ordner gespeichert und per mysql datenbank wird der dazu verfasste kommentar abgespeichert.
    ichhabe sowohl da upload script als auch das script das die bilder mit dem kommentar richtig verlinkt anzeigt.
    nun ist meine frage folgende.
    derweil wird bei mir alles auf einer seite angezeigt, nun möchte ich wissen ob es irgendwie geht das ein bild pro seite angezeigt wird und mann sich weiter durch klicken kann?
    nebenbei post ich euch noch mein script
    FÜR DEN UPLOAD:
    PHP-Code:
    <?php
    // Variablen absichern
    function quote_smart($value)
    {
       
    // Wenn $value NULL ist, dann auch nur NULL und nicht 'NULL' oder '' zurückgeben
       
    if (is_null($value)) return "NULL";
       
    // Ueberfluessige Maskierungen entfernen
       
    if (get_magic_quotes_gpc()) {
           
    $value stripslashes($value);
       }
       
    // In Anfuehrungszeichen setzen, sofern keine Zahl
       // oder ein numerischer String vorliegt
       
    if (!is_numeric($value)) {
           
    $value "'" mysql_real_escape_string($value) . "'";
       }
       return 
    $value;
    }

    if(isset(
    $_POST['send']))
    {
        if(
    $_FILES['datei']['tmp_name'])
        {
            echo
    "Die Datei ",
                
    $_FILES['datei']['name'],
                
    " wurde erfolgreich hochgeladen!!",
            
    move_uploaded_file($_FILES['datei']['tmp_name'], "".$_FILES['datei']['name']);
            
    mysql_connect("localhost","benutzername","passwort") or die(mysql_error());
            
    //Beschreibung aus dem Formular lesen und für Datenbank vorbereiten
            
    $beschreibung=quote_smart($_POST['beschreibung']);
            
    //Dateiname auslesen und vorbereiten
            
    $dateiname=quote_smart($_FILES['datei']['name']);
            
    //MySQL-Verbindung herstellen und Datenbank auswählen
            
    mysql_select_db("datenbank");
            
            
    $sql="insert into dateien (dateiname,beschreibung) values ($dateiname,$beschreibung)";
            
    mysql_query($sql) or die($sql "<br>" mysql_error());
        }
        else
        {
            echo
    "Bitte geben Sie eine Datei an!";
        }
    }
    {
    ?>


    <html>
    <head>
    <title>Datei-Upload</title>
    </head>
    <body>
    <form action="<?php echo$_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post">
    <input name="datei" type="file"><br>
    <input name="beschreibung" type="Text"><br>
    <input name="send" type="submit" value="Upload">
    </form>
    </body>
    </html>

    <?php
    }
    ?>
    UND DAS SCRIPT DAS DIE DATEIN MIT DEN KOMENTAREN ABRUFT:
    PHP-Code:
    <?php
    //Kannst du Dir sparen, wenn du woanders schon die Connection aufmachst:
    mysql_connect("localhost","benutzername","passwort") or die(mysql_error());
    mysql_select_db("datenbank");

    //Abfrage der Bilder
    $sql="select `dateiname`,`beschreibung` from `dateien`";
    $result mysql_query($sql) or die ($sql "<br>" mysql_error());

    //Alle gefundenen Bilder durchgehen
    while ($row mysql_fetch_array($result)) {
    echo 
    "<img src=\"" $row['dateiname'] . "\" />";
    echo 
    "<br>\r\n";
    echo 
    htmlentities($row['beschreibung']);
    }
    ?>
    MFG NoRrEyY

  • #2
    Du musst dein SQL-Statement umformen, damit du immer nur einzeln eine Datei auswählst. Dazu solltest du einmal die Reihenfolge sortieren und dann mit einem LIMIT immer nur einen Beitrag holen.
    Über die URL (als per GET) übergibst du dann dem SQL-Statement, wo er als nächstes Einträge holen soll.

    Beispiel:

    PHP-Code:
    if(empty($_GET['pos'])) {
        
    $pos 0;
    } else {
        
    $pos intval($_GET['pos']);
    }
    $sql_statement "SELECT something FROM table ORDER BY something LIMIT ".$pos.",1"
    Code:
    <a href="meine_datei.php?pos=$pos">Weiter</a>
    Code wie immer ohne Garantie.
    Sunshine CMS
    BannerAdManagement
    Borlabs - because we make IT easier
    Formulargenerator [color=red]Neu![/color]
    Herkunftsstatistik [color=red]Neu![/color]

    Kommentar


    • #3
      also so ganz versteh ich das nicht
      bin leider noch anfänger bei dem script hat mir ein freund geholfen.
      kannst du mir vielleicht sagen wie ich das genau machen sol? oder wo ich das hin kopieren soll?

      MFG NoRrEyY

      Kommentar


      • #4
        Nein kann ich nicht. Du musst selber lernen zu suchen und zu lesen. Mein Beispiel ist schon ein fast fertiger Code. Wenn du damit nichts anfangen kannst, lern erst einmal PHP und MySQL -> www.schattenbaum.net
        Sunshine CMS
        BannerAdManagement
        Borlabs - because we make IT easier
        Formulargenerator [color=red]Neu![/color]
        Herkunftsstatistik [color=red]Neu![/color]

        Kommentar

        Lädt...
        X