tutorials.de Buch-Aktion 02/2012
Like Tree2Danke
  • 1 Beitrag von Flex
  • 1 Beitrag von kuddeldaddeldu
ERLEDIGT
JA
ANTWORTEN
7
ZUGRIFFE
382
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Steusi
    Steusi Steusi ist offline Nasenbär
    Registriert seit
    Sep 2006
    Ort
    MV
    Beiträge
    428
    Hallo Leute, ich würde gern prüfen, ob eine Tabelle bereits in meiner DB enthalten ist, da ich jedes Jahr eine neue anlegen lassen möchte mit dem Jahr im Namen.

    Nur irgendwie klappt es bei mir nicht, erst habe ich es mit der Funktion "mysql_list_tables" probiert, doch da dieses Funktion nichts anderes macht als "SHOW TABLES" wie ich bei php.net gelesen habe, dachte ich mir folgendes muss doch auch klappen:

    Tests:
    PHP-Code:
    $TabellenName "daten".$jahr;

    $test "SHOW TABLES LIKE '".$TabellenName."' FROM DB";
    $showTables mysql_query($test);
    var_dump($test); 
    // "SHOW TABLE LIKE 'daten2009' FROM DB"

    var_dump(mysql_fetch_array($showTables)); 
    //Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result 
    //bool(false) 
    eigentlicher Code
    PHP-Code:
    if(!mysql_num_rows(mysql_query("SHOW TABLES LIKE '".$TabellenName."' FROM DB"))){
    // Warning: mysql_num_rows(): supplied argument is not a valid MySQL result

    // create new table

    Bitte guckt einmal rüber, ich seh den Fehler nicht (aber gleich ist Mittagspause )
     
    Gruß Steusi

    Sollte dir ein Tipp von mir geholfen haben, freue ich mich auch über eine kleine Bewertung.
    Und wenn ein Problem gelöst ist, markiere deinen Beitrag bitte als erledigt.
    PHP-Code:
    $fehler "dummer Tippfehler";
    echo(
    "Und ist das Programm noch so klein, es passt immer noch ein ".$fehler". rein!"); 

  2. #2
    Avatar von Loomis
    Loomis Loomis ist offline Mitglied Bunt
    Registriert seit
    Jul 2002
    Ort
    Aschaffenburg
    Beiträge
    1.538
    Hi,

    was kommt raus, wenn du in dem eigendlichen Code das mysql_num_rows() weglässt?
    Hast du mal mysql_error() ausgeben lassen?
     
    mfg
    --------------------------------------------------------------------------------
    Kein Support via PN, Email, ICQ, Brieftaube oder Flaschenpost!

    Besucht den tutorials.de-Chat | Anleitung
    RTFM - PHP-Handbuch - MySql Handbuch
    --------------------------------------------------------------------------------
    Surftipp...Der Postillon
    --------------------------------------------------------------------------------
    Signatur v2.2

  3. #3
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Deine Syntax bei SHOW TABLES ist falsch.
    Zuerst von wo, dann die Bedingung.

    http://dev.mysql.com/doc/refman/5.1/de/show-tables.html
    Steusi bedankt sich. 
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  4. #4
    Avatar von Steusi
    Steusi Steusi ist offline Nasenbär
    Registriert seit
    Sep 2006
    Ort
    MV
    Beiträge
    428
    Danke Felix Jacobi, klappt wunderbar! Manchmal sieht man den Wald vor lauter Bäumen nicht, dank dir!
     
    Gruß Steusi

    Sollte dir ein Tipp von mir geholfen haben, freue ich mich auch über eine kleine Bewertung.
    Und wenn ein Problem gelöst ist, markiere deinen Beitrag bitte als erledigt.
    PHP-Code:
    $fehler "dummer Tippfehler";
    echo(
    "Und ist das Programm noch so klein, es passt immer noch ein ".$fehler". rein!"); 

  5. #5
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.016
    Hi,

    versuche mal das hier:

    PHP-Code:
    SHOW TABLE STATUS FROM [NAME DER DATENBANK
    Damit bekommst du unter anderem ein Feld mit dem Namen "Name" zurück und das enthält den Namen der Tabellen.
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  6. #6
    Darian Darian ist offline Mitglied Platin
    Registriert seit
    Feb 2003
    Ort
    Guatemala
    Beiträge
    512
    Ich habe das mal wie folgt gemacht.

    Einfach SQL Abfrage "DESC testtable"

    und Wenn dann die errorno 1146 ist, existiert die Tabelle nicht.

    Geht in 3 Zeilen.

    Hoffe ich konnte helfen.

    lg Darian
     

  7. #7
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    übrigens ist das erste, was man bei dem Fehler

    Code :
    1
    
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result

    macht, sich die Fehlermeldung ausgeben zu lassen. => mysql_error()
    MySQL sagt Dir dann schon, was falsch ist. Bei einem Syntaxfehler bekommst Du z.B. die genaue Stelle angezeigt.

    LG
    Steusi bedankt sich. 
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  8. #8
    Avatar von Steusi
    Steusi Steusi ist offline Nasenbär
    Registriert seit
    Sep 2006
    Ort
    MV
    Beiträge
    428
    Danke, danke Ihr überschüttet mich ja gleich mit guten Tipps. Es funktioniert, Ihr seit die Besten!
     
    Gruß Steusi

    Sollte dir ein Tipp von mir geholfen haben, freue ich mich auch über eine kleine Bewertung.
    Und wenn ein Problem gelöst ist, markiere deinen Beitrag bitte als erledigt.
    PHP-Code:
    $fehler "dummer Tippfehler";
    echo(
    "Und ist das Programm noch so klein, es passt immer noch ein ".$fehler". rein!"); 

Ähnliche Themen

  1. Prüfen ob Wert enthalten ist (jquery)
    Von psifactory im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 04.01.11, 09:49
  2. DB2 - eine Spalte in einer Tabelle auf unterschiedliche Werte prüfen
    Von mirscho im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 19.03.10, 18:43
  3. Wie prüfen, ob ein Punkt in String enthalten ist?
    Von thadre im Forum Java Grundlagen
    Antworten: 4
    Letzter Beitrag: 10.08.09, 11:43
  4. Antworten: 3
    Letzter Beitrag: 02.05.03, 11:40
  5. Antworten: 4
    Letzter Beitrag: 04.10.02, 00:08