kostenloser Webspace werbefrei: lima-city


Tabellen auslesen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    a************n

    wie kann ich alle tabellen aus einer datenbank auslesen die mit einem bestimmten "index" anfangen und der rest vom name unbekannt ist.
    wie etwa 1_ //unbekannterteil\\

    mfg andre
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. k****m

    Du musst 2 Spalten einfügen.
    Dann liest du die Daten so aus:
    $vbmysql = mysql_connect("localhost", "DeinBenutzername", "DeinPasswort");
    mysql_select_db("DerDatenbakname");
    $mysqlf = "SELECT spaltename1, spaltename2 FROM tbaellenname WHERE spaltenname1 LIKE '1_'";
    $mysqlaf = mysql_query($mysqlf);
    $daten = mysql_fetch_object($mysqlaf);


    Damit kannst du die Daten auslesen welche mit 1_ anfangen.

    P.S. Du trägst natürlich bei dem Code deine Daten ein.
  4. @kehrum
    Er möchte aber Tabellen aus einer Datenbank haben und nicht Spalten aus einer Tabelle :wink:

    @Topic
    Mit dem SHOW TABLES Befehl kannst du das erreichen. Dein Query müsste in etwa so aussehen:
    $sql="SHOW TABLES LIKE '1_%'";

    Dabei wird die aktuell über mysql_select_db() angewählte Datenbank verwendet, ansonsten musst du eben noch ein FROM Statement einfügen.

    Beitrag zuletzt geändert: 25.1.2009 17:31:33 von tct
  5. Autor dieses Themas

    a************n

    danke tct das kalppt soweit nur wie kann ich nun mit diesem namen arbeiten
    mein versuch
    <?
    
    $sql="SHOW TABLES LIKE '".$id."_%'";
    $get = mysql_query($sql);
    while($row = mysql_fetch_object($get)) {
    	$select = "SELECT `title` FROM ".$row;
    	$get = mysql_query($select);
    	while($zeile = mysql_fetch_object($get)) {
    		echo $row->title."<br>";
    	}
    }
    
    ?>

    aber das will nicht da kommt

    Catchable fatal error: Object of class stdClass could not be converted to string in C:\xampp\htdocs\sharks\bord.treads.php on line 6
    mfg andre
  6. Ich weiß nicht, ob mysql_fetch_object in dem Fall funktioniert, zumal du danach auch nichts zugewiesen hast im Stil $bla=$row->.
    Wie gesagt, da ich es nicht weiß, würde ich mysql_fetch_array verwenden:
    <?
    
    $sql="SHOW TABLES LIKE '".$id."_%'";
    $get = mysql_query($sql);
    while($row = mysql_fetch_array($get)) {
    	$select = "SELECT `title` FROM ".$row[0];
    	$get2 = mysql_query($select);
    	while($zeile = mysql_fetch_object($get2)) {
    		echo $row->title."<br>";
    	}
    }
    
    ?>


    Beitrag zuletzt geändert: 25.1.2009 17:50:30 von tct
  7. Autor dieses Themas

    a************n

    tct schrieb: Ich weiß nicht, ob mysql_fetch_object in dem Fall funktioniert, zumal du danach auch nichts zugewiesen hast im Stil $bla=$row-&gt;.
    Wie gesagt, da ich es nicht weiß, würde ich mysql_fetch_array verwenden:
    &lt;?
    
    $sql="SHOW TABLES LIKE '".$id."_%'";
    $get = mysql_query($sql);
    while($row = mysql_fetch_array($get)) {
    	$select = "SELECT `title` FROM ".$row[0];
    	$get2 = mysql_query($select);
    	while($zeile = mysql_fetch_object($get2)) {
    		echo $row-&gt;title."&lt;br&gt;";
    	}
    }
    
    ?&gt;

    so gehts leider auch nicht...
    ich bekomme 3 mal dieselbe meldung

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\sharks\bord.treads.php on line 8

    mfg andre
  8. Hi,
    du generierst bei deiner äußeren while-Schleife Objekte. Dementsprechend müsstest du auch mit $row->NAME in der nächsten Zeile zum Erfolg kommen. Da ich allerdings nicht weiß, wie man in dem Befehl einen Namen für das Feld des Objektes definiert, kann ich dir dabei nicht weiterhelfen. Du könntest selber mal über folgenden Code (direkt am Anfang der inneren while-Schleife den Namen des Feldes herausfinden:
    print_r($row);

    Allerdings kannst du statt mysql_fetch_object auch mysql_fetch_array verwenden. Bei deinem Code müsste die Zeile dann so lauten:
    while($row = mysql_fetch_array($get)) {
    	$select = "SELECT `title` FROM ".$row[0];

    Gruß
    Karlja

    Edit: Da war tct wohl schneller und hat dieselbe Möglichkeit beschrieben, wie ich im zweiten Teil. Allerdings kannst du nochmal den ersten Teil meines Beitrages probieren.

    Beitrag zuletzt geändert: 25.1.2009 17:59:24 von karlja
  9. Das Problem ist echo $row->title denn $row hießt da schon $zeile :wink:
    Damit sollte es gehen (zumindest tut es das bei mir).
  10. Autor dieses Themas

    a************n

    tct schrieb: Das Problem ist echo $row-&gt;title denn $row hießt da schon $zeile :wink:
    Damit sollte es gehen (zumindest tut es das bei mir).

    stimmt :slant:

    jetzt geht es mit ein bissel debugging
    <?
    
    $sql="SHOW TABLES LIKE '".$bord."_%'";
    $get = mysql_query($sql);
    while($row = mysql_fetch_array($get)) {
    print_r($row);
    	$select = "SELECT `titel` FROM ".$row[0];
    	$get2 = mysql_query($select);
    	while($zeile = mysql_fetch_object($get2)) {
    		echo $zeile->titel."<br>";
    	}
    }
    
    ?>


    danke
    andré
  11. 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!