Dateiausgabe und PHP5

Hi,

na, weiß der Geier, was der Supporter da wieder erzählt hat. Da hab' ich ja auch schon so einiges erlebt. Seid Ihr sicher, dass es daran liegt, dass magic quotes angeschaltet sind? Du kannst die natürlich auch einfach in Deinen Scripten wieder entfernen. Im Handbuch steht ein Beispiel, wie das geht.

LG

Nein sie sind ausgeschaltet und ich will sie ja anschalten.
In der alten PHP4 Version waren die auch angeschaltet und da hat es einwandfrei geklappt.
Habe also deinen Befehl nicht 1:1 übernommen sondern habe anstatt von off einfach mal on eingegeben aber das wars leider nicht ;)
 
Hi,

dann solltest Du Deine Scripte so umschreiben, dass sie auf diese Einstellung nicht angewiesen sind. Ich meine, dass diese Direktive in künftigen Versionen, genau wie register_globals nicht mehr verfügbar sein wird. Vorläufig könntest Du die Funktion aus meinem Link natürlich so umschreiben, dass sie bei nicht gesetzten magic quotes addslashes auf alle Daten anwendet.

LG
 
Habe das Script zur anzeige der Dateien in dem Verzeichniss jetzt mal so geändert

PHP:
<div id="zeigedasbild"></div>
<?
ini_set("display_errors", 1);
error_reporting(E_ALL); 
$verzeichnis1=opendir($_POST['bildverz']./.$_POST['uverz']);
 $verzeichnis=opendir($_POST['thumbs']./.$_POST['uverz']);
	echo"<table width=100% align=center cellspacing=8 cellpadding=8><tr><td class=black colspan=4 align=center>Bildergalerie</td></tr><tr>";
	$i=0;
		while($file=readdir($verzeichnis))
		{
			if ($i <= 3)
			{
				if(is_file($_POST['bildverz']./.$_POST['uverz']./.$file))
					{?>
						<td align=center><a href="<?=$_POST['bildverz'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>"  rel="lightbox[galerie]"><img src="<?=$_POST['thumbs'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" width="100" height="100" border="0"  style="filter:alpha(opacity=40);-moz-opacity:0.4" onmouseover="init_fader(this,5,20,40,99,1)"></a></td>
					<?	$i=$i+1;
					}
			}
		else
		{
			$i=1; ?>
			<tr><td align=center><a href="<?=$_POST['bildverz'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" rel="lightbox[galerie]"><img src="<?=$_POST['thumbs'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" width="100" height="100" border="0" style="filter:alpha(opacity=40);-moz-opacity:0.4" onmouseover="init_fader(this,5,20,40,99,1)"></a></td>
		<? }
	}
echo"</tr><tr><td colspan=4><center><font><a href=\"index.php?seite=bildgal/galerien\" target=\"_self\">zurück</a></font></center></td></tr></table>";
closedir($verzeichnis);
?>

Nur kriege ich jetzt leider einen Fehler und zwar folgenden :

Parse error: syntax error, unexpected '/' in php/bildgal/lesen.php on line 5

Irgendwie finde ich aber keinen Fehler
 
Zuletzt bearbeitet:
Fein fein ein fehler weg tausend neue ;)

Und zwar folgenden:

Notice: Undefined index: bildverz in

Und davon leider nicht zu wenige, und zwar für die Variablen bildverz, uverz und thumbs und zwar in Zeile 5, 6 und 13 :(

Das Script sieht nun so aus :

PHP:
<div id="zeigedasbild"></div>
<?
ini_set("display_errors", 1);
error_reporting(E_ALL); 
$verzeichnis1=opendir($_POST['bildverz']."/".$_POST['uverz']);
$verzeichnis=opendir($_POST['thumbs']."/".$_POST['uverz']);
	echo"<table width=100% align=center cellspacing=8 cellpadding=8><tr><td class=black colspan=4 align=center>Bildergalerie</td></tr><tr>";
	$i=0;
		while($file=readdir($verzeichnis))
		{
			if ($i <= 3)
			{
		if(is_file($_POST['bildverz']."/".$_POST['uverz']."/".$_POST['file']))
					{?>
						<td align=center><a href="<?=$_POST['bildverz'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>"  rel="lightbox[galerie]"><img src="<?=$_POST['thumbs'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" width="100" height="100" border="0"  style="filter:alpha(opacity=40);-moz-opacity:0.4" onmouseover="init_fader(this,5,20,40,99,1)"></a></td>
					<?	$i=$i+1;
					}
			}
		else
		{
			$i=1; ?>
			<tr><td align=center><a href="<?=$_POST['bildverz'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" rel="lightbox[galerie]"><img src="<?=$_POST['thumbs'] ?>/<?=$_POST['uverz'] ?>/<?=$file ?>" width="100" height="100" border="0" style="filter:alpha(opacity=40);-moz-opacity:0.4" onmouseover="init_fader(this,5,20,40,99,1)"></a></td>
		<? }
	}
echo"</tr><tr><td colspan=4><center><font><a href=\"index.php?seite=bildgal/galerien\" target=\"_self\">zurück</a></font></center></td></tr></table>";
closedir($verzeichnis);
?>
 
Zuletzt bearbeitet:
Hi,

na, da kommst Du der Sache doch schon näher. Wo sollen bildverz, uverz und thumbs denn herkommen? Wird das wirklich vom Benutzer per Formular übertragen? Und einen undefined index 'file' wird nicht gemeldet? Wieso prüfst Du überhaupt auf $_POST['file'] an dieser einen Stelle?

LG
 
Hi,

na, da kommst Du der Sache doch schon näher. Wo sollen bildverz, uverz und thumbs denn herkommen? Wird das wirklich vom Benutzer per Formular übertragen? Und einen undefined index 'file' wird nicht gemeldet? Wieso prüfst Du überhaupt auf $_POST['file'] an dieser einen Stelle?

LG

Tachen,

erstmal sorry das ich dich vom schlafen abhalte ;)

Also die drei Variablen werden in einer Config angegeben die in die index.php includiert wird.
Mit dem ersten Script was ich gepostet habe, werden verzeichnisse ausgelesen und als link dargestellt, wenn man auf den Link klickt dann wird dieses also $uverz normalerweise übertragen.
Und zwar so :

index.php?seite=bildgal/lesen&uverz=Verzeichniss Name

Um ehrlich zu sein ich habe einfach alles was eine Variable war mal umgestellt. ;)
 
Zuletzt bearbeitet:
Hi,

erstmal sorry das ich dich vom schlafen abhalte

Ooch, das kann ich schon fein selbst... ;)

Um ehrlich zu sein ich habe einfach alles was eine Variable war mal umgestellt.

Soso, ohne zu wissen, was Du tust, tztz...

Im $_POST-Array liegen Daten, die per POST übertragen werden, üblicherweise durch ein Formular. Url-Parameter finden sich im $_GET-Array wieder. Direkt als Variablen verfügbar sind beide nur, wenn register_globals angeschaltet sind. Wenn die Daten nicht über ein Formular ankommen, kannst Du natürlich auch nicht über $_POST darauf zugreifen.
Poste bitte mal diese include-Datei, wo die Variablen gesetzt werden und lass Dir mal bitte ausgeben, ob register_globals an oder aus sind:

PHP:
echo 'register_globals = ' . ini_get('register_globals') . "<br/>";

LG
 
Also, die config Datei sieht so aus :

Config Datei

PHP:
<?php
//Datenbank Daten
$host="";  			//Datenbank Host
$uname="";  					//Datenbank Username
$pass="";           			//Datenbank Passwort
$db="";            			//Datenbank Name
//Email Adresse wohin das Kontaktformular was schicken soll
$mail="";  			//Email Adresse für den Mailer
//Passwort und Username für den Admin Bereich
$user="";					//Admin Name
$upass="";						//Admin Passwort
//Verzeichnisse für die Bildergalerie
//$bildverz="galerie";                //Hauptverzeichniss für die Bildergalerie
//$thumbs="galerie/thumbs";           //Verzeichniss für die Thumbnails
//Webseiten durchsuchung aktivieren und wenn ja die Daten von Freefind.com
$suchen="";                        //Webseitendurchsuchung aktivieren ? ja oder nein!
$such_id="";                 //Die Zugangs ID von Freefind.com
//==========================================
//=========== Funktionen ===================
//==========================================
//====== Ab hier nichts mehr ändern ========
//==========================================
function rtime($time){
    return sprintf("%f",microtime()-$time);
}

function smily($kommentar)
{
$kommentar=str_replace(':-(','<img src=pics/smily/icon22.gif title=Traurig>', $kommentar);
$kommentar=str_replace(':(','<img src=pics/smily/icon22.gif title=Traurig>', $kommentar);
$kommentar=str_replace('^^','<img src=pics/smily/icon39.gif title=Lacht>', $kommentar);
$kommentar=str_replace('*g*','<img src=pics/smily/icon54.gif title=Grinst>', $kommentar);
$kommentar=str_replace('*G*','<img src=pics/smily/icon54.gif title=Grinst>', $kommentar);
$kommentar=str_replace('*gg*','<img src=pics/smily/icon54.gif title=Grinst>', $kommentar);
$kommentar=str_replace('*ggg*','<img src=pics/smily/icon54.gif title=Grinst>', $kommentar);
$kommentar=str_replace('*ggggggg*','<img src=pics/smily/icon54.gif title=Grinst>', $kommentar);
$kommentar=str_replace(':-P','<img src=pics/smily/icon56.gif title=Zungerausstreckt>', $kommentar);
$kommentar=str_replace(':P','<img src=pics/smily/icon56.gif title=Zungerausstreckt>', $kommentar);
$kommentar=str_replace('=P','<img src=pics/smily/icon56.gif title=Zungerausstreckt>', $kommentar);
$kommentar=str_replace(':-)','<img src=pics/smily/icon39.gif title=Grinst>', $kommentar);
$kommentar=str_replace(':)','<img src=pics/smily/icon39.gif title=Grinst>', $kommentar);
$kommentar=str_replace(';-)','<img src=pics/smily/zwinker.gif title=Zwinkert>', $kommentar);
$kommentar=str_replace(';)','<img src=pics/smily/zwinker.gif title=Zwinkert>', $kommentar);
$kommentar=str_replace('','<b>', $kommentar);
$kommentar=str_replace('','</b>', $kommentar);

return $kommentar;
}
?>


Register Globals sind auf OFF
 
Hi,

und? Fällt Dir nichts auf? Die beiden Zeilen, die $bildverz und $thumbs setzen, sind auskommentiert. $uverz wird ja in der Url übergeben, findet sich also wo?
Und register_globals sind also doch aus (ist ja auch besser so...).
Dann versuch das jetzt mal mit Nachdenken zu ändern ;)

LG
 
Zurück