php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.01.2005, 11:11  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard Überprüfen ob Datenbank bereits existiert

Hi, ich hab ein Problem und zwar möchte ich, dass der überprüft, ob eine Datenbank bereits existiert und wenn ja, dass er dann Daten rein schreibt

Code:
$sql = "INSERT INTO log (Test) VALUES ('test')";
mysql_query($sql);
und wenn nicht, er die Datenbank erstellt und die jeweiligen Daten reinschreibt

Code:
$creat = "CREATE TABLE log (ID int(3) NOT NULL AUTO_INCREMENT, Test text, PRIMARY KEY (ID))";
mysql_query($creat);

$sql = "INSERT INTO log (ID, Test) VALUES ( , 'test')";
mysql_query($sql);
Kann mir jemand helfen? Schonmal Danke


MFG Connar
Connar ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 30.01.2005, 11:21  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.235
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Du könntest einen Select machen, beispielsweise "SHOW TABLES". Und schauen, ob die Tabelle da ist.

Oder du könntest einen Select machen, beispielsweise "SELECT COUNT(*) FROM log" und den mysql-Fehler #1146 (Table not exists) abfragen.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
Alt 30.01.2005, 11:30  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard

Aber zeigt der, wenn die Tabelle nicht existiert nicht auch für den Benutzer einen Fehler an? Denn des würde ich natürlich net wollen. Also des war jetzt bei 2terem.


MFG Connar
Connar ist offline  
Alt 30.01.2005, 11:45  
Gast
 
Beiträge: n/a
Standard

warum machst du das nicht einfach mit
PHP-Code:
if (!mysql_select_db[$dbname]) {mysql_query("CREATE...");} 
Zitat:
Aus dem phpman
mysql_select_db
...
Rückgabewert: Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
oder redest du von Tabellen?
dann müsstest du wirklich einen Query machen, der zeigt dem Benutzer nur dann einen Fehler an wenn du per echo mysql_error(); nen Fehler ausgibst
 
Alt 30.01.2005, 11:48  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard

Code:
(!mysql_select_db($dbname))
War ein kleiner Fehler drin. [] müsste eigentlich () heißen.
Aber ein anderes Problem hab ich da noch, wenn die DB nicht existiert, geht er irgendwie trotzdem in die Schleife, die ja eigentlich nur erscheinen sollte, wenn die DB existiert.

MFG Connar
Connar ist offline  
Alt 30.01.2005, 11:57  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Connar
Aber ein anderes Problem hab ich da noch, wenn die DB nicht existiert, geht er irgendwie trotzdem in die Schleife, die ja eigentlich nur erscheinen sollte, wenn die DB existiert.
Du mußt auch testen, ob der Versuch, die Datenbank zu erstellen, erfolgreich war. CREATE DATABASE darf nicht jeder...
 
Alt 30.01.2005, 12:01  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard

Nee, ich hab das mal nur in der Art probiert:

PHP-Code:
if(!mysql_select_db('Test'))
{
    echo 
"Stimmt";
}
else
{
    echo 
"FEHLER";
}
    
if(!
mysql_select_db('Hallo'))
{
    echo 
"FEHLER";
}
else
{
    echo 
"Stimmt";

Hatte vorher kurz eine Datenbank mit dem Namen 'Test' erstellt.
Deshalb hätte ja normalerweise folgendes erscheinen sollen:

Code:
StimmtStimmt
Stattdessen kam aber

Code:
StimmtFALSCH
raus. Das heißt, er is bei der zweiten Abfrage in die Schleife gegangen, obwohl es keine Datenbank mit dem Name 'Hallo' gibt.


MFG Connar
Connar ist offline  
Alt 30.01.2005, 12:10  
Gast
 
Beiträge: n/a
Standard

Ich gucke in Dein Script rein, wie 'ne Sau ins Uhrwerk.

1. Test soll ja existieren
Code:
if(! mysql_select_db('Test')) 
   echo "Stimmt"; 
else 
   echo "FEHLER";
Wenn NICHT 'Test', 'Stimmt' <- Huch?

Trifft auch auf die andere Verzweigung zu.

Bei der Preisfrage, welche Schleife Du meinst, muß ich allerdings passen.
 
Alt 30.01.2005, 12:12  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard

Oh, oh. Ich hab das ! vernachlässigt und einfach miteingefügt. Aber das würde ja heißen, dass die DB mit Namen Test nicht existiert, obwohl dies in dem Fall entsprechend wäre.


MFG Connar
Connar ist offline  
Alt 30.01.2005, 12:19  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 606
Connar befindet sich auf einem aufstrebenden Ast
Standard

SHIT, ich hab den Fehler. Ich will ja garnet abfragen, ob die Datenbank vorhanden is, sondern man nennt des Tabelle *gg*

Sorry, des ging jetzt voll in die falsche Richtung los.


MFG Connar
Connar ist offline  
 


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
Mit php dynamisch Namen von Bildnamen sowie Pfad in mysql Datenbank speichern mallmis PHP Tipps 2008 1 19.11.2007 23:04
[Erledigt] Datenbank anlegen wenn diese nicht existiert Datenbanken 7 16.02.2006 08:42
Klappmenü aus Datenbank PHP Tipps 2007 1 12.12.2005 15:02
Prüfen ob Benutzername bereits in Datenbank vorhanden ist nicobischof PHP Tipps 2005-2 5 19.10.2005 14:17
Mehrere Anwendungen eine Datenbank... Datenbanken 5 15.08.2005 11:22
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
Prüfen, ob Bild bereits existiert {m-d} PHP Tipps 2005 8 05.05.2005 08:50
Auslesen aus der Datenbank nixdorf PHP Tipps 2005 7 06.02.2005 21:40
gucken ob bereits existiert PHP Tipps 2005 3 16.01.2005 11:20
Eintrag in Datenbank mittels Formular? Datenbanken 5 16.12.2004 17:36
INSERT in die Datenbank PHP Tipps 2004-2 4 13.12.2004 19:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
überprüfen ob datenbank schon existiert, sql überprüfung ob datenbank bereits vorhanden, php abfrage ob datenbank schon existiert, prüfen ob datenbank vorhanden, php prüfen ob mysql datenbankb existiert, db vorhanden test create, gucken ob datenbank besteht wenn nicht erstellen java, php überprüfen datenbank angelegt, java überprüfen ob datenbank existiert, php prüfen ob datanbank existiert, java datenbank bereits existiert, java überprüfen ob datenbank vorhanden, java prüfen ob eine \datenbank existiert\, prüfen ob datenbank existiert java, datenbank existiert bereits, feststellen ob datenbank bereits existiert, php überprüfen ob datenbank existiert, php überprüfen ob datenbank vorhanden, php datenbank existiert nicht obwohl vorhanden

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:00 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.