[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • (GELÖST) > PHP5> ereg() preg_match() Quellcodeeingabe
Seite 1 von 1

(GELÖST) > PHP5> ereg() preg_match() Quellcodeeingabe

Verfasst: 6. Jan 2012, 16:19
von chandany
Hallo verwende dieses Modul unter php5 (genauer siehe unten).

Modul giebt Code in FE und BE aus.

ABER im BE erhalte ich folgende Fehlermeldung:
->

Code: Alles auswählen

"Function ereg() is deprecated ..."  
->
ereg() habe ich mit preg_match() ersetz.
->
"Function preg_match() [function.preg-match]: No ending matching delimiter '>' found in .."
So jetzt bin ich mit meinem Layenverständnis am Ende. :shock: :oops:

Kann mir jemand helfen?????

Re: PHP5> ereg() preg_match() Quellcodeeingabe (html/php/css

Verfasst: 6. Jan 2012, 19:38
von Cheffchen
Hallo,

also meinst PHP5.3<
und preg_match() ist genau richtig aber ohne zu wissen was bei dir "dieses Modul" ist oder etwas code kann dir keiner helfen

Cheffchen

Re: PHP5> ereg() preg_match() Quellcodeeingabe (html/php/css

Verfasst: 6. Jan 2012, 23:25
von chandany
Hallo.

Hier der Link:
http://www.redaxo.org/de/download/modul ... =&cat_id=0
Quellcodeeingabe (html/php/css/js)

Version: 4.2.x
Umsetzung:Stefan Schölzel

Sorry ;)

Re: PHP5> ereg() preg_match() Quellcodeeingabe (html/php/css

Verfasst: 7. Jan 2012, 00:17
von Cheffchen
Hallo,

ach das modul selber hies so, schuldige kam so nicht rüber.
obwohl ich noch nicht den richtigen sin des modules sehe aber gut.

aber jetzt :O)

Zeile 48 wo das ereg ist das ganze so ändern.

Code: Alles auswählen

if(preg_match('/<\?(php)?[^[:graph:]]/', $codeLine)){
Cheffchen

Re: PHP5> ereg() preg_match() Quellcodeeingabe (html/php/css

Verfasst: 7. Jan 2012, 15:22
von chandany
Danke. Klappt :) :) :)

Hier für alle das für PHP5 modifizierte Modul. (ohne Gewähr ;) )

IN:

Code: Alles auswählen

 <?php
//http://www.redaxo.org/de/download/module/?modul_id=526&searchtxt=script&cat_id=-1
/**
 *==================================================
 * REDAXO-Modul: Quelltext (php/html/css/js)
 * Bereich: Eingabe
 * Version: 1>
 * Redaxo Version: 4.3.2 PHP 5.3.1
 *
 * Hinweise:
 *
 * Erforderliche Addons:
 * Bearbeitung: chandany und cheffchen 07.01.2012 //http://www.redaxo.org/de/forum/post96980.html#p96980
 * Bearbeitung: Stefan Schölzel
 * Datum: 06.03.2010
 * Ursprung: Jan Kristinus [Yakamara Media GmbH & Co. KG]::Minibeispiel PHP
 * Typ: Modifikation
 * Ursprungsname: Minibeispiel PHP
 * Ursprung-Datum: /KA/
 *==================================================
 */
?>
Bitte hier den Quelltext(html/php/css/js) eingeben
<p class="rex-form-textarea"><textarea style="width:90%; height:200px;" rows="10" cols="50" class="rex-form-textarea" name="VALUE[1]" id="VALUE[1]">REX_VALUE[1]</textarea></p>
OUT:

Code: Alles auswählen

<?php
//http://www.redaxo.org/de/download/module/?modul_id=526&searchtxt=script&cat_id=-1
/**
 *==================================================
 * REDAXO-Modul: Quelltext (php/html/css/js)
 * Bereich: Eingabe
 * Version: 1>
 * Redaxo Version: 4.3.2 PHP 5.3.1
 *
 * Hinweise:
 *
 * Erforderliche Addons:
 * Bearbeitung: chandany und cheffchen 07.01.2012 //http://www.redaxo.org/de/forum/post96980.html#p96980
 * Bearbeitung: Stefan Schölzel
 * Datum: 06.03.2010
 * Ursprung: Jan Kristinus [Yakamara Media GmbH & Co. KG]::Minibeispiel PHP
 * Typ: Modifikation
 * Ursprungsname: Minibeispiel PHP
 * Ursprung-Datum: /KA/
 *==================================================
 */
if (!function_exists('unhtmlentities')){
  function unhtmlentities($string){
    // Ersetzen numerischer Darstellungen
    $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
    $string = preg_replace('~&#([0-9]+);~e', 'chr("\\1")', $string);
    // Ersetzen benannter Zeichen
    $trans_tbl = get_html_translation_table(HTML_ENTITIES);
    $trans_tbl = array_flip($trans_tbl);
    return strtr($string, $trans_tbl);
  }
} 
if(!$REX['REDAXO']):?>
REX_PHP_VALUE[1]
<?php else:
$sourceCode = 'REX_VALUE[1]';
$sourceCode = explode(
        "\n",
        str_replace(array("\r\n", "\r"), "\n", $sourceCode)
        );

$lineCount = 1;
$formatCode = null;
foreach($sourceCode as $codeLine){
  $codeLine = str_replace('<br />', '', $codeLine);
  $codeLine = unhtmlentities($codeLine);
  $formatCode .= '<tr><td style="padding:0; font-size:0.5em;">'. $lineCount++ .'</td>';
	if(preg_match('/<\?(php)?[^[:graph:]]/', $codeLine)){
  //if(ereg('<\?(php)?[^[:graph:]]', $codeLine)){
    $formatCode .= '<td style="padding:0;">'. highlight_string($codeLine, true).'</td></tr>';
  }else{
    $formatCode .= '<td style="padding:0;">'.
     str_replace('<?php&nbsp;', '', highlight_string('<?php '. $codeLine, true)).
     '</td></tr>';
  }
}
print <<<EOA
<table class="rex-table">
  {$formatCode}
</table>
EOA;
endif;?>

Was man damit anstellen kann?

1.) z.B. für Gallerien individuelle js scripts in den haeder einbinden
2.) sehr individuelle css Anweisungen etc.

:idea: Tip:
im Template einen Haeder-Bereich einrichten und das Modul diesem zuweisen.
;)