php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.03.2005, 18:47  
Gast
 
Beiträge: n/a
Standard [Frage] Eval führt sich nur 1x aus danach ist ende...

habe folgendes Problem ich arbeite bei meiner Seite bei bestimmten sachen mit eval(), mein problem ist jedoch das wenn er von der variable einen wert bekommt das programm sofort stoppt...

Struktogramm:

PHP-Code:
while(Tabelle 1) {
while(
Tabelle 2) {
eval()
SQL-Update
}


PHP-Code:
<?php 
$_SQL
[Mana] = mysql_query("SELECT MANA, ID FROM `Tabelle1`"$db);
while(
$_MANA[SubSpezial] = mysql_fetch_array($_SQL[Mana])) {
    echo(
$_MANA[SubSpezial][Name]);
    
$_SQL[SubMana] = mysql_query("SELECT * FROM `Tabelle2` WHERE `Spezial` = '".$_MANA[SubSpezial][ID]."' ORDER BY ID"$db);
    while(
$_MANA[Spezial] = mysql_fetch_array($_SQL[SubMana])) {
        if(
$_MANA[SubSpezial][MANA] != "") {
            eval(
$_MANA[SubSpezial][MANA]);
            
mysql_query("UPDATE `Tabelle2` SET `Mana` = '".$_MANA."' WHERE `ID` = '".$_MANA[Spezial][ID]."'"$db);
        } 
    }
}
?>
Die Variable $_MANA wird in dem eval($_MANA[SubSpezial][MANA]); errechnet...

Das problem ist wenn er auf einen eintrag stöst wo das Feld ...[MANA] php code enthält dann führt er es aus, stoppt jedoch bei der ersten eval() funktion und läuft einmal durch, führt den mysql query net mehr aus...

sagt mir nicht eval und so ist nicht so dolle ich brauch das aber in dieser form da es sich am einfachsten verarbeiten lässt

mfg, Spezies
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.03.2005, 09:22  
Benutzer
 
Registriert seit: 13.03.2005
Beiträge: 43
PHP-Kenntnisse:
Fortgeschritten
BigManu
BigManu eine Nachricht über ICQ schicken BigManu eine Nachricht über Skype™ schicken
Standard

Beim Gebrauch von eval() gilt es einige Faktoren zu beachten. Die Zeichenkette code_str muss gültigen PHP-Code enthalten, einschließlich syntaktisch richtiger Begrenzungszeichen (also incl. ";"-Abschluss-Zeichen für einzelne Anweisungen, sonst bricht der PHP-Parser in der folgenden Zeile mit einem Fehler ab.

PHP.net - Vllt. hilfts...
Nach dieser Beschreibung, kann das nur daran liegen, dass du einen Fehler im Parameter für eval() hast und somit das ganze abbricht!

Keep stayin'
__________________
Programmers are busy writing the next best idiot proof software. The universe in the meantime is making the next best idiot. The universe is winning...
BigManu ist offline  
Alt 17.03.2005, 10:09  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

just for fun:

Das sind aber mal eine menge Konstanten auf einem Haufen ... *wow*


error_reporting(E_ALL);
Guradia ist offline  
Alt 17.03.2005, 13:49  
Gast
 
Beiträge: n/a
Standard

hm.. so wie es anschein hat hat er mit der variable $_MANA probs da ich sie davor schonmehrmals als mehrdimensionelles array deklariert habe...

hab eventuell nen weg gefunden es zu umgehen, das problem ist ebend nur das es nur für einen Eintrag geht :> aber mehr kann der User auch nicht machen mit einmal^^

mfg, Spezies
 
Alt 17.03.2005, 13:52  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

wenn du die fehler die nach
error_reporting(E_ALL);

auftauchen ansprichst, solltest du die indizes der array vieleicht mal nicht als konstanten sondern als strings anspreachen

-> $_MANA['index']
robo47 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ende Array erreicht? krackmoe PHP Tipps 2008 16 30.07.2008 19:04
Mit PHP am Ende einer TXT was ergänzen / Leerzeilen löschen DDogg PHP Tipps 2007 5 01.02.2007 10:32
eval, preg_match ? php phrasen ? ^^ notyyy PHP Tipps 2007 10 21.12.2006 16:24
Code per eval umsetzen und Funktion integrieren Tscheggi PHP Tipps 2006 6 10.05.2006 10:46
Problem mit DIV -Bild soll am unteren Ende der Seite bleiben scheibo HTML, Usability und Barrierefreiheit 16 12.01.2006 16:54
[Erledigt] Navigation auf Smarty umstellen?! PHP-Fortgeschrittene 3 10.01.2006 09:19
neue datensätze am ende anfügen? Dilandau Datenbanken 3 12.12.2005 22:47
Am Ende jeder Zeile etwas einfügen lassen... PHP Tipps 2005-2 2 29.10.2005 05:56
array keys mit eval erzeugen ff-webdesigner PHP-Fortgeschrittene 4 22.10.2005 18:44
eval und DB PHP Tipps 2005-2 8 03.09.2005 09:58
irc bot probleme mit fread & eval PHP-Fortgeschrittene 8 02.07.2005 01:28
Layer am Ende einer Seite platzieren php1 HTML, Usability und Barrierefreiheit 2 21.03.2005 22:44
datensatz am ende einfügen....??? ckrentel PHP Tipps 2005 8 20.03.2005 21:06
eval fehler abfangen PHP Tipps 2005 9 18.02.2005 19:37


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:17 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.