Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Wyświetlenie ilości Plików z bazy MySQL, Wyświetlenie ilości Plików z bazy SQL - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: Wyświetlenie ilości Plików z bazy MySQL, Wyświetlenie ilości Plików z bazy SQL (/thread-wy%C5%9Bwietlenie-ilo%C5%9Bci-plikow-z-bazy-mysql-wy%C5%9Bwietlenie-ilo%C5%9Bci-plikow-z-bazy-sql)



Wyświetlenie ilości Plików z bazy MySQL, Wyświetlenie ilości Plików z bazy SQL - maniek666 - 17-11-2013

Witam serdecznie , czy dałby rade ktoś mi pomóc jak moge wyciągnać coś z 2 tabel bazy MYSQL i wyświetlić to w pliku php
Kod:
CREATE TABLE IF NOT EXISTS `albums` (
`id` int(30) NOT NULL AUTO_INCREMENT,
`title` varchar(50) DEFAULT NULL,
`artist` varchar(50) DEFAULT NULL,
`cover` varchar(250) DEFAULT NULL,
`release_date` varchar(30) DEFAULT NULL,
`play_count` int(30) DEFAULT '0',
`rating_count` int(30) DEFAULT '0',
`rating_total` int(30) DEFAULT '0',
`created_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`last_played` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
oraz
Kod:
CREATE TABLE IF NOT EXISTS `tracks` (
`id` int(30) NOT NULL AUTO_INCREMENT,
`album_id` int(30) DEFAULT NULL,
`track_title` varchar(30) DEFAULT NULL,
`track_url` varchar(250) DEFAULT NULL,
`duration` varchar(10) DEFAULT NULL,
`rating_total` int(30) DEFAULT '0',
`rating_count` int(30) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

chciałbym wyświetlić ilość dodanych plików i ilość albumów
zaczołem sie bawić i wyszło mi coś takiego

Kod:
<?php
mysql_connect('xxx', 'xxx', 'xxx')or die('Nie można się połączyć: ' . mysql_error());


function funkcja() {

echo '
<table width="100%" align="center" border="1" cellspacing="0" cellpadding="0">
<tr>
<td align="center" class="uni_01">id</td>
</tr>';
  
$sql = "SELECT
COUNT(a.*) AS count_albums,
(SELECT COUNT(t.*) FROM tracks WHERE t.album_id = a.id) AS count_tracks
FROM
albums a";
$result = mysql_query($sql);

while($r = mysql_fetch_array($result)) {

$id = $r['id'];
mysql_close();
echo '
<tr>
<td class="uni_01" align="center">'.$id.'<br></td>

</tr>';
}
echo '
</table>';

}




tylko ze dostaje taki komunikat
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /muza24/php_script/as.php on line 22
co jest nie tak ?
ps. to jest pierwsze moje zetknięcie sie z php ... więc serdecznie prosze o wyrozumiałość ...


RE: Wyświetlenie ilości Plików z bazy MySQL, Wyświetlenie ilości Plików z bazy SQL - ILIES - 28-11-2013

Taki błąd wyskakuje przy złym zapytaniu do bazy, poza tym masz nieco namieszane w tym kodzie, spróbuj tego, a jak dalej będziesz mieć taki błąd to wklej to zapytanie do phpMyAdmin i zobacz czy zwraca Ci wynik[/php].
Kod PHP:
<?php
mysql_connect
('xxx''xxx''xxx')or die('Nie można się połączyć: ' mysql_error());

function 
funkcja() {
    
$sql "SELECT
            COUNT(a.*) AS count_albums,
            (SELECT COUNT(t.*) FROM tracks WHERE t.album_id = a.id) AS count_tracks
            FROM albums a"
;
            
    
$result mysql_query($sql);
    
$i 1//zmienna pomocnicza do ID
    
echo ' <table>';
        echo 
'<tr>';
            echo 
'<th>ID</th>';
            echo 
'<th>count_alums</th>';
            echo 
'<th>count_tracks</th>';
        echo 
'</tr>';
    while(
$r mysql_fetch_assoc($result)) {
        
$count_albums $r['count_albums'];
        
$count_tracks $r['count_tracks'];
        echo 
'<tr><td>';
            print 
$i;
            
$i++;
        echo 
'</td><td>';
            print 
$count_albums;
        echo 
'</td><td>';
            print 
$count_tracks;
        echo 
'</td></tr>';
    }
    echo 
'</table>';
}
mysql_close();
?>

Unikaj takich zapisów, formatowanie rób w CSS najlepiej w osobnym pliku:
Kod PHP:
<table width="100%" align="center" border="1" cellspacing="0" cellpadding="0">
<
td align="center" class="uni_01">id</td