SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 07.04.2008, 12:48:13
Shadowman Shadowman ist offline
Anfänger
 
Registriert seit: Jun 2003
Beiträge: 79
Shadowman eine Nachricht über ICQ schicken
problem mit eval und sprachvariablen

sorry leute, aber ich habe gerade die absolute blockade...

ich lese meine language-vars in ein array, welches dann zu einem späteren zeitpunkt per eval abgearbeitet werden soll

Hiermit beschaffe ich die einzelnen menüpunkte und schreibe sie alle hintereinander in die variable $menue
PHP-Code:
$result mysql_query("SELECT * FROM `admin_menu` WHERE `lvl` <= '".$lvl."' ORDER BY `order` ASC");
while(
$menu mysql_fetch_row($result)) {
  
$menue .= "<a href=\"".$menu[2]."\">".$menu[1]."</a><br>";

dann habe ich eine funktion, welche aus {variablenname} $lang[variablenname] macht:
PHP-Code:
$menue convert($menue); 
das ergebnis bis zum jetzigen zeitpunkt ist:
Zitat:
$lang[insert_template]
Templates Bearbeiten
Sprachpaket Erstellen
Sprachpakete Bearbeiten
Lang-Var Einfügen
Lang-Var Bearbeiten
Logout
wobei ich nur den ersten punkt mit der sprachvariablen gemacht habe.

die anzeige, dass dort php code angezeigt wird hat mich zu der annahme veranlasst, dass ich die variable nochmal duch ein eval ziehen muss:
PHP-Code:
eval("\$menue = \"$menue\";"); 
wobei ich das ganze dann ja natürlich danach noch per echo ausgebe. leider ist es aber so, dass ich beim ausführen von eval eine fehlermeldung bekomme, die ich nicht verstehe:
Zitat:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /usr/export/www/hosting/schlafbaer/tweening/admin/menu.php(16) : eval()'d code on line 2
und an das eval wird nur folgendes übergeben:
Code:
<a href="">T</a><br>
<a href="index.php?a=template&e=write">$lang[insert_template]</a><br>
<a href="index.php?a=template&e=edit">Templates Bearbeiten</a><br>
<a href="index.php?a=lang&e=write">Sprachpaket Erstellen</a><br>
<a href="index.php?a=lang&e=edit">Sprachpakete Bearbeiten</a><br>
<a href="index.php?a=lang_var&e=write">Lang-Var Einfügen</a><br>
<a href="index.php?a=lang_var&e=edit">Lang-Var Bearbeiten</a><br>
<a href="index.php?a=logout">Logout</a>
nebenbei habe ich auch das ganze mal so umgestellt, dass anstatt $lang[insert_template] ein $lang['insert_template'] wurde, so hat es aber dann auch nicht mehr an den anderen stellen funktioniert. wenn ihr noch irgendwelche funktionen braucht, schreibt es einfach. alle oben liegenden zitate sind codeschnipsel, die alle auf einander folgen bis auf die auszüge aus dem quelltext der indexseite mit den links

ich hoffe das war einigermaßen verständlich und jemand hat nen tip für mich
Mit Zitat antworten
  #2  
Alt 07.04.2008, 16:42:09
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: problem mit eval und sprachvariablen

Hi!

Wenn Du mit eval arbeiten möchtest, dann musst Du immer darauf achten, dass der auszuführende Code auch wirklich gültiger PHP-Code ist.

Ich habe es jetzt nur überflogen, aber Folgendes könnte Dich weiterbringen:

Ein Beispiel Snippet:

PHP-Code:
<?php
$lang
['insert_template'] = 'Template anlegen';

$str '<a href="">T</a><br>
<a href="index.php?a=template&e=write"><?php print ( $lang["insert_template"] ); ?></a><br>
<a href="index.php?a=template&e=edit">Templates Bearbeiten</a><br>
<a href="index.php?a=lang&e=write">Sprachpaket Erstellen</a><br>
<a href="index.php?a=lang&e=edit">Sprachpakete Bearbeiten</a><br>
<a href="index.php?a=lang_var&e=write">Lang-Var Einfügen</a><br>
<a href="index.php?a=lang_var&e=edit">Lang-Var Bearbeiten</a><br>
<a href="index.php?a=logout">Logout</a>'
;

ob_start ();

eval ( 
'?>' $str );

$str ob_get_clean ();

var_dump $str );
?>
In Deinem Fall müsste die Sache etwa so aussehen:

PHP-Code:
<?php
  $result 
mysql_query("SELECT * FROM `admin_menu` WHERE `lvl` <= '".$lvl."' ORDER BY `order` ASC"); 
  
  while ( 
$menu mysql_fetch_row $result ) )
  { 
    
$menue .= '<a href="' $menu[2] . '"><?php print ( ' $menu[1] . ' ); ?></a><br>'
  }

// ...

  
$menue convert $menue );

// ...

  // Wenn eine direkte Ausgabe stattfinden soll,
  // dann kannst Du die Ausgabesteuerung entfernen
  // und nur eval nutzen.
  
ob_start ();
  
  eval ( 
'?>' $menue );
  
  
$menue ob_get_clean ();

  print ( 
$menue );
?>
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #3  
Alt 14.04.2008, 10:00:35
Shadowman Shadowman ist offline
Anfänger
 
Registriert seit: Jun 2003
Beiträge: 79
Shadowman eine Nachricht über ICQ schicken
AW: problem mit eval und sprachvariablen

PHP-Code:
<?php
  session_start
();

  if(isset(
$_SESSION['Admin_lvl'])) {
    
$lvl $_SESSION['Admin_lvl'];
  }else{
    
$lvl 0;
  }

  
$result mysql_query("SELECT * FROM `admin_menu` WHERE `lvl` <= '".$lvl."' ORDER BY `order` ASC");
  while(
$menu mysql_fetch_row($result)) {
    
$menue .= "<a href=\"".$menu[2]."\"><?php print(".$menu[1]."); ?></a><br>\n";
  }
  
$menue .= "<a href=\"index.php?a=logout\">Logout</a>";

  
$menue convert($menue);

  
ob_start (); 
  eval ( 
'?>' $menue ); 
  
$menue ob_get_clean (); 
  echo 
$menue;

?>
so hat es dann funktioniert
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Upload von Fotos, die in eine DB eingetragen werden sollen. Problem 2 jf-flasher PHP Grundlagen 2 01.02.2009 17:20:41
Include Problem innerhalb eval Funktion Blue7 PHP Grundlagen 10 15.07.2007 20:32:45
problem mit eval benutzung Shadowman PHP Grundlagen 3 30.03.2006 17:18:02
Problem mit Lokalisierung eines SESSION - Problems Fabian85 PHP für Fortgeschrittene und Experten 5 03.10.2005 20:17:54
mysql und php problem schmidt PHP für Fortgeschrittene und Experten 9 31.10.2003 18:05:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:53:23 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt