[PHP]Użycie tablicy jako zmiennej przy połączeniu z bazą

0

Witam!

Chciałbym napisać skrypt tak by w każdej chwili można go było łatwo zmienić. Mam już napisany jego główny silnik ale chciałbym go trochę uprościć. Z Po połączeniu z bazą danych chce wyciągnąć ważne dla mnie informacje i robie to tak:

$sql = mysql_query("SELECT config_value FROM phpbb_config WHERE config_name='topiccount'");
    $row = mysql_fetch_array($sql, MYSQL_ASSOC);
    $topics = $row['config_value'];
    $sql = mysql_query("SELECT config_value FROM phpbb_config WHERE config_name='usercount'");
    $row = mysql_fetch_array($sql, MYSQL_ASSOC);
    $users = $row['config_value'];
    $sql = mysql_query("SELECT config_value FROM phpbb_config WHERE config_name='postcount'");
    $row = mysql_fetch_array($sql, MYSQL_ASSOC);
    $posts = $row['config_value'];
    
    echo 'to jest zmienna posts: ', $posts, '!;

Na tym etapie wszystko działa poprawnie. Kiedy dopisuję JAKĄŚ tablicę:

$forum = array('1','2');

i chce żeby wartości '1' i '2' były wpsisane w miejscu po podkreślniku i przed 'config'

phpbb_config

Skonstruowałem pętlę foreach na takiej zasadzie:

foreach ($forum as $key => $value) {
    echo $key;

20:$sql = mysql_query("SELECT config_value FROM phpbb_",$value ,"config WHERE config_name='topiccount'");
21:$row = mysql_fetch_array($sql, MYSQL_ASSOC);
$topics = $row['config_value'];

echo 'to jest zmienna posts', $posts, 'tak ona wyglada';
}

i wyskakuje taki błąd:

Warning: Wrong parameter count for mysql_query() in /home/michalk/public_html/sprawdzenie.php on line 20

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/michalk/public_html/sprawdzenie.php on line 21

Proszę o pomoc

0

Jako newbie mogę jedynie zasugerować wyrzucenie nawiasów z zapytania obejmujących zmienną. By zapytanie wyglądało tak:

"SELECT config_value FROM phpbb_, $value, config WHERE config_name='topiccount'"

Bo w Twoim zapisie funkcja nie dostaje chyba stringa jako parametru.

0

Niestety dalej jest problem z linia 21:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/michalk/public_html/sprawdzenie.php on line 21

0

Jeżeli jest błąd tylko z tą funkcją, to ile rekordów masz w tej tabeli? Jeżeli nie masz tam żadnych rekordów to może przez to.

0

a czy przypadkiem mysql_fetch_array() nie przyjmuje tylko wyniku zapytania jako argumentu?
czyli

mysql_fetch_array($sql)

?

0

Do łączenia ciągów znaków służy . nie , (przecinek oddziela parametry). Drugi błąd wynika z błędu w zapytaniu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1