Autor Zpráva
dj.kennny
Profil *
Ahoj, už se to tady řešilo několikrát, ale já z toho nejsem moudrej. Včera mi MS IE při otevření eshopu vypsal spoustu řádků typu (Deprecated: Function ereg() is deprecated in /users/zalohovane/dumprouti.cz/dumprouti.cz/libraries/TplParser.php on line 194). Opera mi to teda nedělá, Tak jsem zjišťoval co se stalo a na serveru mě pustily PHP 5.3. Tak jsem si zažádal o navrácení, ale bohužel tato chyba je tam stále. Našel jsem si že se musí přepsat příkaz ereg, ale ať dělám cokoliv, vždy to skončí špatně.

Příkaz mam např. takový:

 preg_match( '/\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\[\]x7f-\xff]*/', $this->content, $wyniki );

           if( ereg( '\]', $wyniki[0] ) ){
        if( ereg( '\[', $wyniki[0] ) ){
                  $poz[1][2] = $poz[1][1] + strpos( $wyniki[0], ']' );
          $bArray = true;
Alphard
Profil
Možná jste nahradil jednu funkci, ale další ereg() vám tam zůstaly, musíte je přepsat také.
Viz Nejčastější potíže s PHP (FAQ) » Regulární výrazy
dj.kennny
Profil *
V tomto php souboru mam pouze dva řádky chybové. to znaméná že by měl vypadat kod takto?

 preg_match( '/\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\[\]x7f-\xff]*/', $this->content, $wyniki );
 
           if( preg_match( '\]', $wyniki[0] ) ){
        if( preg_match( '\[', $wyniki[0] ) ){
                  $poz[1][2] = $poz[1][1] + strpos( $wyniki[0], ']' );
          $bArray = true;
Alphard
Profil
dj.kennny:
V principu ano, ale regulární výrazy pro ereg_* nejsou zcela stejné s těmi pro preg_*. Musíte je upravit.
dj.kennny
Profil *
To bude asi hlavní problém.....vždy když to změním tak se mě rozhodí úplně vše. Asi regulární výrazy nebudou správně. Tak já jdu studovat a studovat.
jirsen
Profil *
Alphard, Alphard:
Zdravím, tak se tady mořím s podobnou záležitostí. Nainstaloval jsem si script na web a je tam pár chyb. Pokoušel jsem se to opravit, ale pořád dělám něco špatně. Můžu poprosit, jak se dá správně předělat
ereg ('' . '\\/\\/' . $elnlckNJC, $elnlcOowg)
na preg...
Díky

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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