Autor Zpráva
MagicPowa
Profil
Zdravím, zkouším se bavit s PostgreSQL. Toto je schéma tabulky, která slouží pro nastavení určitých věcí u každého webu:

tb_nastaveni (id_nastaveni, kod, hodnota)
1 | WEB       | eshop
2 | DOMENA | zaregistrovaná
3 | FIRMA     | název firmy


Mám kus scriptu:

Volání na MySQL:
$vyber = mysql_query("SELECT kod, hodnota FROM tb_nastaveni") or die (mysql_error());
$nastaveni = array();
while($data = mysql_fetch_row($vyber)) {
  $nastaveni[$data[0]] = $data[1];
}

echo $nastaveni['WEB']; //výsledek => eshop


Volání na PostgreSQL:
$vyber = pg_query("SELECT kod, hodnota FROM nazev_schematu.tb_nastaveni");
$nastaveni = array();
while($data = pg_fetch_row($vyber)) {
  $nastaveni[$data[0]] = $data[1];
}

echo $nastaveni['WEB']; //výsledek => Notice: Undefined index: WEB


Nic mě nenapadá. Děkuji za každou pomoc.
Kajman_
Profil *
print_r($nastaveni);
MagicPowa
Profil
Kajman:
Array ( [WEB ] => eshop [DOMENA ] => zaregistrovaná [FIRMA ] => název firmy)
MagicPowa
Profil
V poli to je ale proč to nejde vypsat?
MagicPowa
Profil
Tak jsem si zobrazil zdrojový kód a vypisuje se to tam takto:

Array
(
    [WEB                 ] => eshop
    [DOMENA              ] => zaregistrovaná
    [FIRMA               ] => název firmy
)


Proč se tam dělají bílé znaky?

Když dam vypsat se skopírovanou mezerou, tak se to vypíše.
echo $nastaveni['WEB               '];
MagicPowa
Profil
Vyřešeno, moje chyba jelikož jsem měl v PostgreSQL nastaveno sloupci character(20) a zbytek pozic co se nevyplnily se ve výpisu PHPkem doplnily mezerama. Vyřešilo nastavit sloupci character varying. Děkuji Kajmane.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0