login  Naam:   Wachtwoord: 
Registreer je!
 Forum

show databases

Offline maestro - 20/09/2004 22:14
Avatar van maestroHTML gevorderde Goeienavond.
Ik zit met hetvolgende: ik wil een lijst van alle databases op mijn server op m'n scherm. Ik heb alvast het volgende:
  1. <?php
  2. mysql_connect ("localhost");
  3. $query = "SHOW DATABASES";
  4. $result = mysql_query ($query);
  5. ?>

Nu wil ik de inhoud $result op mijn scherm hebben, maar is dat nu een array of niet?
  1. echo ("$result");

levert mij Resource id #2.

Ik heb al vanalles geprobeerd, maar het lukt niet.

12 antwoorden

Gesponsorde links
Offline cowbeast - 20/09/2004 22:16
Avatar van cowbeast Onbekend uim kzou zeggen kijk een in een file van php my admin :cool:
Offline maestro - 20/09/2004 22:22
Avatar van maestro HTML gevorderde Mijn bedoeling is om een systeem te maken waarmee een admin van een database systeem via zijn browser zijn databases kan bekijken, veranderen, nieuwe databases toevoegen, ander verwijderen zonder dat die iets van mySQL hoeft te kennen. Nu wil ik de mogelijkheid bieden om van alle databases op een server de namen in het browservenster weer te geven. En hier zit ik dus vast.
Offline sasser - 20/09/2004 22:30
Avatar van sasser PHP interesse
  1. <?php
  2. mysql_connect("localhost", "gebruikersnaam", "wachtwoord");
  3. mysql_select_db("naam van database");
  4.  
  5. mysql_query("SHOW DATABASES") or die(mysql_error());
  6. ?>
Dit moet werken denk ik als SHOW DATABASES bestaad;-)
Offline Ros - 20/09/2004 22:37
Avatar van Ros HTML interesse Moet je hem niet met een while doorlopen?
Offline maestro - 20/09/2004 22:42
Avatar van maestro HTML gevorderde SHOW DATABASES bestaat inderdaad in mySQL. Als je het intoetst in de dosprompt: mysql> SHOW DATABASES krijg je hetvolgende:

  1. +----------+
  2. | Database |
  3. +----------+
  4. | mysql |
  5. | test |
  6. | tmp |
  7. +----------+
Offline Thomas - 20/09/2004 22:46 (laatste wijziging 20/09/2004 22:46)
Avatar van Thomas Moderator Dear God...

mysql_query() geeft altijd een R E S O U R C E terug.

Die moet je dus fetchen... altijd...
Offline maestro - 20/09/2004 23:23
Avatar van maestro HTML gevorderde ok sorry FangorN, daar had ik inderdaad aan moeten denken.
  1. $array = mysql_fetch_row($result);
is eraan toegevoegd, maar als ik
  1. print("count($array)");
toevoeg, krijg ik de waarde 1 terug, terwijl er toch 8 databases staan. Hij wil alleen de eerste teruggeven. Ik snap er de *** van. Enfin, ik ga er morgen nog wel eens naar kijken.
Offline Thomas - 20/09/2004 23:32
Avatar van Thomas Moderator Je haalt het resultaat ook rij voor rij op he...

  1. <?php
  2. // je query
  3. $query = "JE QUERY";
  4.  
  5. // query uitvoeren, resultaten opslaan in $result
  6. $result = mysql_query($query) or die("woops: ".mysql_error());
  7.  
  8. if(mysql_num_rows($result) > 0) {
  9. // resultaten, gebruik je favoriete fetch-methode op de resultaten op te halen
  10. while($row = mysql_fetch_assoc($res)) {
  11. /*
  12.   $row bevat nu een resultaatrij.
  13.   Als je bijvoorbeeld de velden stuff1 en stuff2 van de tabel lotsastuff
  14.   hebt opgehaald kun je hier een resultaatrij afdrukken met behulp van
  15.   $row['stuff1'] en $row['stuff2']
  16.   */
  17. ...
  18. }
  19. // geef het resultaat vrij
  20. } else {
  21. // geen resultaten
  22. echo "no results...";
  23. }
  24. ?>


Dit sjabloon kun je voor ELKE query gebruiken...
Offline DRUNK - 20/09/2004 23:40
Avatar van DRUNK PHP gevorderde Een paar minutjes spelen met PHP leverde me deze code op, als je de constante 'TEST' op 1 zet zie je de inhoud van de array die mysql_fetch_array() terug geeft:

  1. <?php define('TEST', 0);
  2.  
  3. $conn = mysql_connect("host", "user", "pass]");
  4. $data = mysql_query("SHOW DATABASES");
  5.  
  6. while ($DB = mysql_fetch_array($data)) {
  7. if (TEST == 1) {
  8. echo '<pre>' . print_r($DB) . '</pre>';
  9. }
  10. else {
  11. echo '<pre>' . $DB[0] . '</pre>';
  12. }
  13. }
  14.  
  15. ?>
Offline maestro - 21/09/2004 21:42
Avatar van maestro HTML gevorderde ok thanx a lot!!!!!
Dankzij de goede raad heb ik het gevonden.
Offline bosgroen - 21/09/2004 21:57
Avatar van bosgroen Gouden medaille

PHP interesse
dus wat jij eigenlijk wilt maken is een eigen versie van phpadmin. (Maar je hebt wel moeilijkheden met zelf een query te schrijven.)

Ochja, veel geluk met jouw onderneming.
Offline twopeak - 22/09/2004 01:14
Avatar van twopeak Gouden medaille

PHP ver gevorderde
als je zoekt in de V1 site, dan heb ik ooit eens een phpmijnadmin gemaakt...
die kan het meeste aan, maar is niet zo proper geprogrammeerd!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.324s