mysql_list_dbs alternatief voor mysqli
Nadat de gebruiker is ingelogd wou ik graag de databases laten zien met
maar dit werkt helaas niet voor mysqli kwam ik achter, Kan iemand mij uitleggen hoe ik dit kan doen doormiddel van queries? Ik zou de namen graag onder elkaar hebben dan. Ik kan alleen engelse sites vinden hierover, en dat begrijp ik tot zover maar kan iemand het mij hier duidelijker uitleggen hoe ik dit kan doen?
Bedankt
Quote:
Array ( [Database] => information_schema )
Array ( [Database] => cdcol )
Array ( [Database] => dit is de server )
Array ( [Database] => johnny )
Array ( [Database] => mysql )
Array ( [Database] => performance_schema )
Array ( [Database] => phpmyadmin )
Array ( [Database] => test )
Array ( [Database] => cdcol )
Array ( [Database] => dit is de server )
Array ( [Database] => johnny )
Array ( [Database] => mysql )
Array ( [Database] => performance_schema )
Array ( [Database] => phpmyadmin )
Array ( [Database] => test )
daarvoor heb ik nu deze code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
$connect = @mysqli_connect($_POST["dbhost"], $_POST["dbuser"], $_POST["dbpass"]);
$connect_errno = mysqli_connect_errno();
if ($connect)
{
$result = mysqli_query($connect, 'show databases');
$row = mysqli_fetch_row($result);
foreach ($result as $row)
{
print_r($row);
echo "<BR>";
}
}
$connect_errno = mysqli_connect_errno();
if ($connect)
{
$result = mysqli_query($connect, 'show databases');
$row = mysqli_fetch_row($result);
foreach ($result as $row)
{
print_r($row);
echo "<BR>";
}
}
maar hoe haal ik dat "Array ( [Database]" er voor weg en kan ik dat vervangen door een opsommings teken?
de rechten zijn dus blijkbaar zover dat ik de databases kan zien maar hoe maak ik er een mooi lijstje van?
En wat is het nut van regel 7?
Waarom niet meteen een while uitvoeren?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$mysqli = new mysqli('localhost', 'root', '');
if ($result = $mysqli->query('SHOW DATABASES')) {
$databases = array();
while ($row = $result->fetch_array()) {
$databases[] = $row[0];
}
}
// Alfabetisch gesorteerd lijstje met gevonden databases
if (isset($databases)) {
sort($databases);
echo '<ul>';
foreach ($databases as $database) {
echo '<li>', $database, '</li>';
}
echo '</ul>';
}
?>
$mysqli = new mysqli('localhost', 'root', '');
if ($result = $mysqli->query('SHOW DATABASES')) {
$databases = array();
while ($row = $result->fetch_array()) {
$databases[] = $row[0];
}
}
// Alfabetisch gesorteerd lijstje met gevonden databases
if (isset($databases)) {
sort($databases);
echo '<ul>';
foreach ($databases as $database) {
echo '<li>', $database, '</li>';
}
echo '</ul>';
}
?>
Ward, bedankt dit is precies wat ik zocht. Aar, wat is het verschil met als ik het in while zou hebben gedaan? Santhe, ik had het ergens gezien en het werkte, weet ook niet waarom :p