SetaPDF
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 13.07.2007, 08:34   #1
TP-Veteran
 
Benutzerbild von jayjay
 
Registriert seit: May 2003
Ort: krefeld
jayjay hilft, wo's gehtjayjay hilft, wo's geht
Question

[php & mysql] tabelle switchen


moin, hab da eine ganz einfache abfrage, es gibt 2 tabellen, die 1. tabelle wird direkt als var mitgegeben:
PHP-Code:
$table_news "news"
jetzt möchte ich, dass als erstes check läuft ob tabelle news existiert und daten hat, wenn nicht dann soll
PHP-Code:
$table_news "news_backup"
laufen. geht das?
__________________
computer tun nur das was man ihnen sagt, meistens

wenn's geholfen hat - bewerte
jayjay ist offline   Mit Zitat antworten


Alt 13.07.2007, 11:11   #2
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
Dann frag den SQL-Server doch einfach, ob er die Tabelle kennt:
Code:
SHOW TABLES LIKE '$table_news'
Die Rückgabe kannst Du entsprechend auswerten...
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Alt 13.07.2007, 11:28   #3
TP-Veteran
 
Benutzerbild von jayjay
 
Registriert seit: May 2003
Ort: krefeld
jayjay hilft, wo's gehtjayjay hilft, wo's geht
was ich bis jetzt habe:
PHP-Code:
$sql "SELECT * FROM news";
$result mysql_query($sql) or die(mysql_error());
$num_rows mysql_num_rows ($result);

$table_news ' ';
if (
mysql_num_rows($result)) {
    
$table_news "news";
}
else {
    
$table_news "news_backup";
}
mysql_free_result($result); 
dann folgt eine abfrage auf die definierte tabelle:
PHP-Code:
$sql "SELECT * FROM $table_news WHERE Pro_Lin_ID=2005";
$result mysql_query($sql) or die(mysql_error());
$num_rows mysql_num_rows ($result);
if(
mysql_num_rows($result)) {
    echo 
"News in der Datenbank:<br />\n";
    while(
$row mysql_fetch_assoc($result)) {
        echo 
$row['Art_Lan']."<br />\n";
    }
    echo 
"<br />".$num_rows." News gesamt<br />";
}
else {
    echo 
"Es sind keine News in der Datenbank vorhanden<br />\n";
}
mysql_free_result($result); 
komischerweise haut das hin aber das ergebnis kommt dreifach
__________________
computer tun nur das was man ihnen sagt, meistens

wenn's geholfen hat - bewerte
jayjay ist offline   Mit Zitat antworten
Alt 13.07.2007, 11:46   #4
TP-Veteran
 
Registriert seit: May 2006
marc22 bringt sich richtig einmarc22 bringt sich richtig ein
Deine obige Abfrage nach der Tabelle funktioniert nicht. Was ist denn, wenn in News keine Datensätze enthalten sind? Dann wird auch die news_backup benutzt. Soll das so sein?

Wieso benutzt Du nicht die Lösung von DSB?

Das zweite sollte eigentlich nicht passieren. Bist Du sicher, dass es nur einen passenden Datensatz gibt?
__________________
...Meine Meinung

1984
marc22 ist offline   Mit Zitat antworten
Alt 13.07.2007, 12:00   #5
TP-Veteran
 
Benutzerbild von jayjay
 
Registriert seit: May 2003
Ort: krefeld
jayjay hilft, wo's gehtjayjay hilft, wo's geht
warum funktioniert der erste teil nicht? was ist da falsch?
ja, richtisch, wenn in news nix drin, am besten erst check, ist table news da, wenn ja - sind daten da, wenn ja dann nimm sie, sonst news_backup ziehen.
wie funzt das mit
PHP-Code:
SHOW TABLES LIKE '$table_news' 
__________________
computer tun nur das was man ihnen sagt, meistens

wenn's geholfen hat - bewerte
jayjay ist offline   Mit Zitat antworten
Alt 13.07.2007, 12:35   #6
TP-Veteran
 
Registriert seit: May 2006
marc22 bringt sich richtig einmarc22 bringt sich richtig ein
Wenn Du abfragst:

PHP-Code:
SHOW TABLES LIKE 'news' 
Und ein Ergebnis zurückkommt, dann ist die Tabelle vorhanden. Kommt kein Ergebnis zurück bzw. ist dieses leer, gibt es 'news' nicht und Du musst 'news_backup' benutzen.
__________________
...Meine Meinung

1984
marc22 ist offline   Mit Zitat antworten
Alt 13.07.2007, 13:21   #7
TP-Veteran
 
Benutzerbild von jayjay
 
Registriert seit: May 2003
Ort: krefeld
jayjay hilft, wo's gehtjayjay hilft, wo's geht
ich check das nicht
wie wird show tables eingesetzt?
PHP-Code:
$sql "SHOW TABLES LIKE 'news'"
und dann?
__________________
computer tun nur das was man ihnen sagt, meistens

wenn's geholfen hat - bewerte
jayjay ist offline   Mit Zitat antworten
Alt 14.07.2007, 13:45   #8
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
PHP-Code:
$sql "SHOW TABLES LIKE 'news'";
$res=mysql_query($sql);
if(
mysql_num_rows($res) {
  
#ist vorhanden
} else {
  
#Pech gehabt

__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
[php & mysql] tabelle switchen [php & mysql] tabelle switchen
« Darf ich das? Yahoo müllt meine Logs voll | MySQL und RegExp »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:27 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67