kostenloser Webspace werbefrei: lima-city


2 Daten nebeneinander aus einer datenbank auslesen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    chatvz

    Kostenloser Webspace von chatvz

    chatvz hat kostenlosen Webspace.

    Hallo
    ich habe vor ein bilderalbum auf meiner homepage zu machen.
    die bilder sollen wie folgt angezeigt werden: Bild1 Bild2
    Bild3 Bild4
    .........
    ich habe aber keine anung wie das gehen soll.
    mein script bis jetzt:
    <?php
    $AlbumID = $_GET['Album'];
    $UserID = $_SESSION['user_id'];
    
    $sql = "SELECT ".  
        " * ".  
      "FROM ".  
        "Bilder ".  
      "WHERE ".  
        "(UserID like '$UserID' AND Album like '$AlbumID')";  
    $result = mysql_query ($sql); 
      if (mysql_num_rows($result) > 0) { 
    while ($data = mysql_fetch_array ($result)) {
    $BilderZahl = $data['Bilder'];
    
    echo "$BilderZahl";
    
    
    }else{
     echo "Das Album ist leer.<br><br>";
    }
    ?>

    Ich hoffe ihr könnt mir helfen.
    LG:ChatVz

    Beitrag zuletzt geändert: 29.3.2009 1:29:33 von chatvz
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. u***********n

    Hallo,
    wie sieht den deine Datenbank aus? Kannst Du mal den Aufbau beschreiben.

    Am besten phpmyadmin aufrufen, die Tabelle anklicken und dann davon ein Bild machen, oder sich die Tabelle exportieren lassen
    und dann nur die Tabellenbeschreibung posten.

    Momentan gibst Du ja nur die Anzahl der Bilder aus. Das wäre mit der dem Befehl

    SELECT count(*) FROM Bilder WHERE UserID like '$UserID' AND Album like '$AlbumID')";


    wobei ich eventuell das like durch ein = ersetzten würde. Weiß war nicht ob es wirklich etwas schneller und
    sicherer ist, aber eventuell. Außer Du eilst in den Variablen Dinge wie "user%" oder "album%" speichern

    SELECT count(*) FROM Bilder WHERE UserID = '$UserID' AND Album = '$AlbumID')";



    Hier ein Beispiel:

    Meine Tabelle:
    CREATE TABLE IF NOT EXISTS `test_table_bilder` (
      `id` int(11) NOT NULL auto_increment,
      `album` varchar(20) NOT NULL,
      `user` varchar(20) NOT NULL,
      `bild` varchar(30) NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;


    Meine Seite:

    <html>
    <head><title>Test</title></test>
    <body>
      <?php
    $link = mysql_connect('SERVERNAME', 'USERNAME', 'PASSWORT');
    if (!$link) {
        die('keine Verbindung möglich: ' . mysql_error());
    }
    else
    {
      echo 'Verbindung erfolgreich';
      $sql = 'SELECT * FROM `DATENBANKNAME`.`test_table_bilder`';
      $ergebnis = mysql_query($sql);
      if (!$ergebnis) {
        die('Ungültige Abfrage: ' . mysql_error());
      }
      else
      {
        while($row = mysql_fetch_object($ergebnis))
          {
          echo "<br>";
          echo $row->id;
          echo "<br>";
          echo $row->album;
          echo "<br>";
          echo $row->user;
          echo "<br>";
          echo $row->bild;
          echo "<br>";
          }
      }
      mysql_close($link);
    }
      ?>
    </body>
    </html>


    Die Ausgabe

    Verbindung erfolgreich
    1
    Urlaub2009
    user1
    bild1.jpg



    Gruß



    Beitrag zuletzt geändert: 29.3.2009 9:42:28 von urlaub-buchen
  4. Autor dieses Themas

    chatvz

    Kostenloser Webspace von chatvz

    chatvz hat kostenlosen Webspace.

    wie das geht weiß ich aber ich hab keine ahnung wie er die daten dann nebeneinander ausgibt (es soll nur aus der spalte "Bilder" ausgelesen werden und dann so aussehen)
    1 2
    3 4
    5 6
    .........

    das auslesen funktioniert schon aber die anordnung nicht.

    Beitrag zuletzt geändert: 29.3.2009 10:34:15 von chatvz
  5. f************r

    Hi,

    wenn ich dich richtig verstanden habe, gibt er die Bilder schon aus, aber alle nebeneinander. Dann musst du einfach folgendes am Ende der While-Schleife einfügen:

    ´$i++;
    if ($i == 2) { echo "<br />"; $i = 0;


    Dann setzt er alle 2 Zeilen einen Zeilenumbruch!

    MfG

    Steffen

  6. Etwas eleganter:
    $i++;
    if(!$i%2) { echo '<br />'; }
  7. Autor dieses Themas

    chatvz

    Kostenloser Webspace von chatvz

    chatvz hat kostenlosen Webspace.

    wo genau muss ich den das einsetzen?:confused:
  8. <html>
    <head><title>Test</title></test>
    <body>
      <?php
    $link = mysql_connect('SERVERNAME', 'USERNAME', 'PASSWORT');
    if (!$link) {
        die('keine Verbindung möglich: ' . mysql_error());
    }
    else
    {
      echo 'Verbindung erfolgreich';
      $sql = 'SELECT * FROM `DATENBANKNAME`.`test_table_bilder`';
      $ergebnis = mysql_query($sql);
      if (!$ergebnis) {
        die('Ungültige Abfrage: ' . mysql_error());
      }
      else
      {
        while($row = mysql_fetch_object($ergebnis))
          {
          echo "<br>";
          echo $row->id;
          echo "<br>";
          echo $row->album;
          echo "<br>";
          echo $row->user;
          echo "<br>";
          echo $row->bild;
          $i++;
          if(!$i%2) { echo '<br />'; }
          }
      }
      mysql_close($link);
    }
      ?>
    </body>
    </html>
  9. Autor dieses Themas

    chatvz

    Kostenloser Webspace von chatvz

    chatvz hat kostenlosen Webspace.

    mein script siet so aus:
    <?php
    $AlbumID = $_GET['Album'];
    $UserID = $_SESSION['user_id'];
    
    $sql = "SELECT ".  
        " * ".  
      "FROM ".  
        "Bilder ".  
      "WHERE ".  
        "(UserID like '$UserID' AND Album like '$AlbumID' AND geloescht like '0')"; 
      $ergebnis = mysql_query($sql);
      if (!$ergebnis) {
        die('Ungültige Abfrage: ' . mysql_error());
      }
      else
      {
        while($row = mysql_fetch_object($ergebnis))
          {
          echo $row->Bilder;
          $i++;
          if(!$i%2) { echo '<br>'; }
          }
      }
    
    ?>

    die bildnamen werden immernoch untereinander angezeigt und es wird nirgends ein zusätzlicher zeilenumbruch gemacht.
    is das so richtig eingesetzt??
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!