| Autor | Zpráva | ||
|---|---|---|---|
| David123 Profil * |
#1 · Zasláno: 12. 7. 2011, 17:53:12
Ahoj,
mám následující kód:
$sloupec = 'nazevsloupce';
if(ereg ("(, |^){$r['title']}(, |$)", $record[''.$sloupec.''])) {
...
...
...
}
Problém je, že tento zápis pokaždé vrací false a kód uvnitř závorek se neprovede. Pokud provedu zápis, kdy místo proměnné zapisuji přímo hodnotu, vše je v pořádku. Rovněž vypsání proměnné mimo funkci je ok:
//v pořádku
if(ereg ("(, |^){$r['title']}(, |$)", $record['nazevsloupce'])) {
...
...
...
}
//v pořádku
echo $record[''.$sloupec.''];
Nevíte prosím, jak správně zapsat výše uvedený příklad tak, aby fungoval? Díky |
||
| Sir Tom Profil |
#2 · Zasláno: 12. 7. 2011, 19:25:36 · Upravil/a: Sir Tom
David123:
Ahoj, v tom prvním kódu v podmínce jsou dva apostrofy vedle sebe? Pokud ano, tak index pole přepiš na: $record["'".$sloupec."'"] (Apostrof mezi uvozovkami.) Řekl bych to takhle mělo být správně. Nevím, proč echo $record[''.$sloupec.'']; funguje, ale výraz podmínce nikoliv. |
||
| David123 Profil * |
#3 · Zasláno: 12. 7. 2011, 19:47:23
Tak to taky bohužel nefunguje. U tohoto zápisu nefunguje ani echo. V podmínce bez funkce zápis se dvěma apostrofy vedle sebe funguje, například:
if ($record[''.$sloupec.'']==1) {
.
.
.
}
Při podmínce s funkcí ereg() už nikoliv. Nějaké další tipy, čím by to mohlo být? |
||
| Sir Tom Profil |
#4 · Zasláno: 12. 7. 2011, 19:52:49
David123:
Možná bloudíme kolem neviditelného nepřítele. Na manuálních stránkách http://cz.php.net/function.ereg se píše, že fce ereg se nedoporučuje používat - stálo by za zvážení se podívat po nějakém jiném řešení... |
||
| Alphard Profil |
#5 · Zasláno: 12. 7. 2011, 20:01:40
David123:
„echo $record[''.$sloupec.''];“ Blbost, kde jste přšel na ty apostrofy? Normálně $record[$sloupec] by mělo fungovat, chyba bude zřejmě jinde, nějaký překlep?
„Na manuálních stránkách ht>tp://cz.php.net/function.ereg se píše, že fce ereg se nedoporučuje používat“ Vše z rodiny ereg_ je deprecated (i když dosud funkční), používejte alternativy z rodiny preg_, tady konkrétně preg_match(). |
||
| David123 Profil * |
#6 · Zasláno: 12. 7. 2011, 20:27:16
Překlep to nebyl, ale moje nepozornost. Tento kód je ve funkci a proměnnou $sloupec jsem neměl zpřístupněnou. Díky všem, kteří se pokoušeli problém vyřešit :-)
|
||
|
Časová prodleva: 15 let
|
|||
0