kostenloser Webspace werbefrei: lima-city


PHP Problem mit ID

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Hey, hab folgendes Problem!

    <?php  
    $verbindung = mysql_connect("***", "***" , "***")  
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");  
    
    mysql_select_db("***") or die ("Datenbank konnte nicht ausgewählt werden"); 
    
    $i = 1; 
    
    $sql = "SELECT * FROM gruppe"; 
    
    $db_erg = mysql_query( $sql ); 
    if ( ! $db_erg ) 
    { 
      die('Ungültige Abfrage: ' . mysql_error()); 
    } 
    
    while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC)) 
    { 
      $i++; 
      echo $i ; 
      echo $zeile['name']; 
      $id = $zeile['id']; 
      echo "<a href='gruppe.php?id=$id'>"; 
      echo '<br />'; 
    } 
    
    mysql_free_result( $db_erg ); 
    
    ?>



    Es sollen halt alle Gruppen angezeigt werden! Das funktioniert ja auch zum Teil. Aber jeder gruppe wird halt irgendeine id zugewiesen, und nicht die id die zu ihr gehört... Wie könnte ich das ändern?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Führ doch mal SELECT * FROM gruppe in phpMyAdmin aus und schau, was raus kommt ;) ORDER BY dürfte auch nützlich sein.
  4. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Hab ich, und da kommt die Tabelle mit den ganzen gruppen (id, beschreibung und name)!
    Aber das löst leider nicht mein Problem!
  5. Ne, aber das hilft dir dabei, die Fehlerquelle einzugrenzen...

    <?php  
    $verbindung = mysql_connect('***', '***' , '***') or die('Verbindung zur Datenbank konnte nicht hergestellt werden');  
    mysql_select_db('***') or die ('Datenbank konnte nicht ausgewählt werden'); 
    
    $i = 1;
    $sql = 'SELECT id, name FROM gruppe ORDER BY id'; 
    $db_erg = mysql_query( $sql ) or die('Ungültige Abfrage: ' . mysql_error());
    
    while($zeile = mysql_fetch_array($db_erg)) { 
    	echo $i.'. <a href="gruppe.php?id='.$zeile['id'].'">'.$zeile['name'].'</a><br />';
    	$i++;
    }
    ?>


    Beitrag zuletzt geändert: 25.4.2011 16:56:49 von fabo
  6. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Ha dein code mal verwendet, aber es ist immernoch falsch.

    Die Gruppe mit der ID 5 bekommt die ID 8... Und wenn man draufklickt wird das Profil der Gruppe 8 angezeigt -.-
  7. Zeig mir mal bitte die Tabelle... Mir sieht das nämlich so aus, als wäre id nicht das, was du suchst...

    Beitrag zuletzt geändert: 25.4.2011 17:04:42 von fabo
  8. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    http://www7.pic-upload.de/25.04.11/wlwz2jcv1ds.png

    Das eingegebene is nur zur füllung da :D
  9. Mehr als diese drei Felder existieren nicht? Ist id ein Feld des Typs "INT"?
  10. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    ja... Also wenn ich die gruppen selber per link aufrufe funktioniert alles...

    bsp.: www.meinedomain.de/gruppe.php?id=3 Dann wird auch das Profil der Gruppe 3 angezeigt!
  11. SQL:

    CREATE TABLE IF NOT EXISTS `gruppe` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(100) NOT NULL,
      `beschreibung` varchar(100) NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
    
    INSERT INTO `gruppe` (`id`, `name`, `beschreibung`) VALUES
    (1, 'test1', 'Testgruppe 1'),
    (2, 'test2', 'Testgruppe 2'),
    (3, 'test3', 'Testgruppe 3'),
    (4, 'test4', 'Testgruppe 4');


    PHP:

    <?php  
    $verbindung = mysql_connect('localhost', 'test' , '12345') or die('Verbindung zur Datenbank konnte nicht hergestellt werden: '.mysql_error());  
    mysql_select_db('test') or die ('Datenbank konnte nicht ausgewählt werden'); 
    
    $i = 1;
    $sql = 'SELECT id, name FROM gruppe ORDER BY id'; 
    $db_erg = mysql_query( $sql ) or die('Ungültige Abfrage: ' . mysql_error());
    
    while($zeile = mysql_fetch_array($db_erg)) {
    	if(!empty($zeile['name'])) {
    		echo $i.'. <a href="gruppe.php?id='.$zeile['id'].'">'.$zeile['name'].'</a><br />';
    		$i++;
    	}
    }
    ?>


    Ergebnis:

    1. <a href="gruppe.php?id=1">test1</a><br />
    2. <a href="gruppe.php?id=2">test2</a><br />
    3. <a href="gruppe.php?id=3">test3</a><br />
    4. <a href="gruppe.php?id=4">test4</a><br />


    Wenn bei dir etwas anderes raus kommt, liegts an der Tabelle.

    Beitrag zuletzt geändert: 25.4.2011 17:34:35 von fabo
  12. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Hey, dankeschön :D

    Es funktioniert einwandfrei!
    Wäre es vlt noch möglich das du mir sagst was du geändert hast?
  13. Nichts. Du hast irgendwo einen Fehler in deiner Tabelle (falscher Feldtyp oder sonstwas). Zumindest muss ich davon ausgehen, weil ich die Tabelle ja nur visuell kenne und der PHP-Teil in Ordnung ist.

    Beitrag zuletzt geändert: 25.4.2011 17:36:34 von fabo
  14. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Oh... Naja, Passiert :wall:

    Und Danke nochmal! :prost:
  15. 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!