php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.11.2009, 17:12  
Neuer Benutzer
 
Registriert seit: 22.11.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
hadro befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] mySQL Tabelle existenz Prüfung

Hallo zusammen,

ich beginne gerade mit mySQL und PHP und habe jez fast den ganzen Sonntag mit diesem Problem verbracht:

Ich erstelle via PHP eine Datenbank und eine Tabelle. Funktioniert auch so einwandfrei - NUR: - wenn ich die Tabelle von Hand unter phpMyAdmin lösche, sagt er mir trotzdem, dass dieses Existiert und erstellt sie nicht neu.

PHP-Code:
<?php
require_once("inc_sql/SQL.connect.php");

//Datenbank:
$dbname="software_inv";
//Tabelle:
$tabname="software";
//Platzhalter:
$ph=" ";

$createtb="CREATE TABLE";
$showtb="SHOW TABLES LIKE";

$result=mysql_query($showtb.$ph."'.$tabname.'");
echo 
$result;

    if(
$result=="")
    {
        
mysql_select_db($dbname) or die(mysql_error());
        
mysql_query($createtb.$ph.$tabname." (
            ID INT(7) AUTO_INCREMENT PRIMARY KEY,
            AUTOR VARCHAR(50),
            SOFTWARE VARCHAR(50) NOT NULL,
            VERSION VARCHAR(30),
            INSTKEY VARCHAR(50) ) " 
)
        or die (
mysql_error());
        
$createtableecho="Tabelle erfolgreich angelegt!";
    }
    else
    {
        
$createtableecho="Tabelle existiert!";
    }

?>
Sieht da jemand auf Anhieb, was da falsch läuft?
Das $result liefert mir nach der Erstellung der Tabelle "Resource id #7" zurück. Das liefert er auch immernoch, wenn ich die Tabelle von Hand gelöscht habe und die Seite neu aufrufe.
ERST, wenn ich die komplette Datenbank lösche, erstellt er auch wieder eine Tabelle.

Ich weiß einfach nicht, was genau da falsch läuft oder was ich ändern muss.

Schonmal vielen Dank fürs lesen und eventuell helfen

schönen Sonntag Abend noch
hadro
hadro ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.11.2009, 17:14  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo und Willkommen,

wie wäre es mit:
Code:
CREATE TABLE IF NOT EXISTS
Asipak ist offline   Mit Zitat antworten
Alt 22.11.2009, 17:22  
Neuer Benutzer
 
Registriert seit: 22.11.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
hadro befindet sich auf einem aufstrebenden Ast
Standard

Hallo Asipak,

die Variable: $createtableecho (Ja, wahrscheinlich sehr unglücklich gewählt ) soll ja einen Status auf meiner index.php ausgeben.
Dafür muss er in die IF rein was er aber nicht mehr tut, wenn im $result "Resource id #7" drinne steht.

Mit IF NOT EXIST wäre mir da nicht geholfen, weil ich ja dann keine Abfrage habe, ob diese Tabelle überhaupt da ist (Da müsste ich mein IF ja entfernen, weil er ja so oder so nicht rein geht vernünftig). Das würde ich halt gerne haben.
Allein um zu sehen wie das funktioniert so genau .

Es gibt mit Sicherheit komplett andere Lösungen für sowas. Die Frage ist dabei noch. Sind diese für einen Anfänger geeignet?

hadro
hadro ist offline   Mit Zitat antworten
Alt 22.11.2009, 17:46  
Neuer Benutzer
 
Registriert seit: 22.11.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
hadro befindet sich auf einem aufstrebenden Ast
Standard

Hallo zusammen....

PHP-Code:
$result=mysql_query("SELECT * FROM ".$tabname." WHERE 1"); 
Hat die Lösung gebracht...

Danke trotzdem...
hadro
hadro ist offline   Mit Zitat antworten
Alt 22.11.2009, 17:49  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.706
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Themenmoderation:
[→] Verschoben von PHP Einsteiger
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 22.11.2009, 17:52  
Neuer Benutzer
 
Registriert seit: 24.06.2009
Beiträge: 6
PHP-Kenntnisse:
Fortgeschritten
michfrm befindet sich auf einem aufstrebenden Ast
Standard

Um herauszufinden ob eine Tabelle existiert kannst Du SHOW TABLES verwenden:
Beispiel
michfrm ist offline   Mit Zitat antworten
Alt 26.11.2009, 13:50  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Und beachte IMMER IMMER IMMER die Dokumentation zu Rückgabewerten von Funktionen...

PHP-Code:
$result=mysql_query($showtb.$ph."'.$tabname.'");
if(
$result==""
Doku mysql_query
Zitat:
für SELECT, EXPLAIN, SHOW oder DESCRIBE Anweisungen liefert mysql_query() eine Ressourcen-Kennung oder FALSE, falls die Anfrage nicht korrekt ausgeführt wurde.
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Was ist das Limit der Datensätze in einer MySQL Tabelle? ph!l Datenbanken 3 17.01.2010 22:37
Bildpfad in Tabelle mysql auslesen DKuhn Datenbanken 5 07.10.2009 13:46
Bilder in Tabelle einfügen Mysql oder direkt?! DKuhn PHP Tipps 2009 3 30.09.2009 10:14
[Erledigt] MySQL, Daten in Tabelle einlesen, Struktur funktioniert nicht ganz MasterChief PHP Tipps 2008 3 13.10.2008 11:39
Daten aus Mysql Tabelle über Arrays in Variabeln schreiben Toby PHP Tipps 2008 8 22.08.2008 10:01
[Erledigt] Problem mit mySQL Datenbanken 7 27.09.2005 12:06
MYSQL - ASCII query in UTF8 Tabelle PHP Tipps 2005-2 1 14.09.2005 14:43
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Text von MySql Tabelle anzeigen lassen Matthiasnet Datenbanken 2 09.02.2005 13:57
Erstellen spalten in MySQL tabelle Datenbanken 7 14.11.2004 19:53
jede 2. Zeile aus MySQL Tabelle auslesen PHP Tipps 2004-2 4 09.11.2004 14:25
[Erledigt] tabelle in Mysql übertragen Datenbanken 0 05.08.2004 10:23
Maximal Wert in MYSQL Tabelle nach id rausfinden? PHP Tipps 2004 3 03.07.2004 23:27
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/datenbanken/61494-erledigt-mysql-tabelle-existenz-pruefung.html, php mysql existenz prüfen, mysql existenz tabelle prüfen, php mysql abfrage auf existenz, mysql existenz einer spalte prüfen, mysql existenz einer tabelle prüfen, mysql tabellen existenz, existenz einer tabelle prüfen mysql, mysql existenz prüfen, mysql tabelle existenz prüfen, php sql tabelle existiert, mysql tabellen auf existenz überprüfen, tabelle auf existenz prüfen php mysql, mysql tabelle auf existenz prüfen, php tabellenexistenz prüfen, existenz tabelle, mysql tabelle vorhanden, mysql tabellenexistenz prüfen, mysql tabelle existiert, mysql tabelle auf existenz überprüfen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:16 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum