PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : skript funktioniert nicht


N'Koto Zinde
10.09.2007, 19:47:32
Hallo, ich hab schon wieder ein problem:

ich hab eine funktionierendes skript. jetzt wollte ich es auf einem anderen server (2) ausprobieren und schon passiert gar nichts mehr.

Server 1:
confixx
PHP: 5.1.2

Server 2:
plesk
PHP: 5.0.1

kann schon allein daran liegen, und wenn ja was kann ich dagegen tun?
auf meinem Server 2 werden komischerweise keine Fehlermeldungen angezeigt. (Ich hab also noch nichtmal einen Hinweis darauf, wo sich ein Fehler verstecken könnte.)

kann mir da jemand behilflichsein. wäre wichtig.
danke.
Gruß.

MatMel
10.09.2007, 22:26:47
Sollen wir jetzt die Serverkonfigurationen und den Skriptcode erraten oder wie?
Also an Plesk und Confixx wirds wohl nicht liegen...

feuervogel
10.09.2007, 23:20:57
da geht mal wieder jemand ohne sein auto in die werkstatt und hofft, dass da einer telepathie beherrscht...mannomann.

N'Koto Zinde
11.09.2007, 03:01:04
ja sorry, aber woran solls denn liegen?? wenns einmal funktioniert und einmal nicht. ich kann euch jetzt auch mit 1000 zeilen code erschlagen, aber daraus werdet ihr wahrscheinlich auch nicht schlauer.

ich hab ja keinen fehler programmiert. ich suche nur nach einer idee, warum es einmal funktioniert und einmal nicht. ich glaube es liegt da nicht am code, sondern an irgendetwas anderem

defabricator
11.09.2007, 05:09:38
ini_set('display_errors', true);
error_reporting(E_ALL|E_STRICT);
trigger_error("test", E_USER_NOTICE);Das mal bite am Anfang einfügen und testen.

feuervogel
11.09.2007, 10:09:39
ja sorry, aber woran solls denn liegen?? wenns einmal funktioniert und einmal nicht. ich kann euch jetzt auch mit 1000 zeilen code erschlagen, aber daraus werdet ihr wahrscheinlich auch nicht schlauer.


stimmt, du bist nicht in der lage, dein script so weit zu reduzieren, dass dein problem noch auftaucht, aber wir uns nur durch wenig code wühlen müssen.

ich hab ja keinen fehler programmiert. ich suche nur nach einer idee, warum es einmal funktioniert und einmal nicht. ich glaube es liegt da nicht am code, sondern an irgendetwas anderem

stimmt, und wenn es zum beispiel an der php oder der server-config liegen könnte, weil du ja keine fehler programmierst, ist es genug information, die php-versions-nr. und den namen des konfigurations-werkzeuges zu nennen, denn daraus ergibt sich ja automatisch für uns ersichtlich die ausgabe von phpinfo() und konsorten.

immer noch: mannomann

N'Koto Zinde
11.09.2007, 11:19:13
so, durch den einzig konstruktiven beitrag von defabricator (danke dafür) konnte ich das problem herausfinden.
offenbar hat er ein problem mit der require "" Funktion.

ich rufe aus index.php einen datei namens config.php auf, die wiederrum einen datei names server.php aufruft. (mittels require um bestimmte funktionen/variablen bereitzustellen)
wenn ich den inhalt von server.php nach config.php kopiere, und diese dann nicht mehr aufrufe (also nur ein require Befehl in Folge) gehts.

Trotzdem würde ich gerne bei meinem alten Modell bleiben (index -> config -> server).
weiß ja etzt vielleicht jemand was?

N'Koto Zinde
12.09.2007, 00:59:01
mein problem hat sich leider noch nicht gelöst und es gibt ein weiteres, dass wohl auf die serverkonfiguration zurückzuführen ist. (diesmal mit code)

diese funktion geht nicht mehr:

function thumbnail($bild,$maxhoehe,$maxbreite) {
$info = getimagesize($bild);

$image = imagecreatefromjpeg($bild);

if($info[0] >= $info[1]) { //Querformat
//Faktor für die Reduzierung der Höhe ermitteln
$faktor = $info[0] / $maxbreite;
$hoehe = $info[1] / $faktor;

$thumb = imagecreatetruecolor($maxbreite,$hoehe);

imagecopyresized($thumb,$image,0,0,0,0,$maxbreite,$hoehe,$info[0],$info[1]);
}
else { //Hochformat
//Faktor für die Reduzierung der Breite ermitteln
$faktor = $info[1] / $maxhoehe;
$breite = $info[0] / $faktor;

$thumb = imagecreatetruecolor($breite,$maxhoehe);

imagecopyresized($thumb,$image,0,0,0,0,$breite,$maxhoehe,$info[0],$info[1]);
}

$name = pathinfo($bild);

if(imagejpeg($thumb,"$name[dirname]/tn_$name[basename]",100)) {
return true;
}
else {
return false;
}


}

Diese Funktion baut mir aus einem gerade hochgeladenen Bild ($bild) ein Thumbnail mit einer einer maximalen Höhe und maximalen Breite.

Nochmal zur Erinnerung, das Skript funktioniert einwandfrei, aber halt auf einem anderen Server. In diesem Fall bekomme ich nur den Hinweis, dass er die neue Datei (das Thumbnail) nicht finden konnte.
Ich bitte erneut um Hilfe.

defabricator
12.09.2007, 02:26:23
Trotzdem würde ich gerne bei meinem alten Modell bleiben (index -> config -> server).
weiß ja etzt vielleicht jemand was?Wie lautete denn die Fehlermeldung, die ausgegeben wird?


Nochmal zur Erinnerung, das Skript funktioniert einwandfrei, aber halt auf einem anderen Server. In diesem Fall bekomme ich nur den Hinweis, dass er die neue Datei (das Thumbnail) nicht finden konnte.
Ich bitte erneut um Hilfe.
und nochmalini_set('display_errors', true);
error_reporting(E_ALL|E_STRICT);
trigger_error("test", E_USER_NOTICE);Das mal bite am Anfang einfügen und testen.

N'Koto Zinde
12.09.2007, 13:43:04
beim ausführen der oberen function thumbnail
wir nur diese warnung ausgegeben:

Warning: %v%v() [function.%v]: Unable to open '../gfx/23/tn_bild63.jpg' for writing in /funktionen.php on line 79

sie bezieht sich auf den befehl: imagejpeg();

an den ordnerberechtigungen liegst auch nicht, die stehen alle auf 777

N'Koto Zinde
13.09.2007, 16:46:55
wollte nochmal daruf hinweisen, dass mein problem noch nicht gelöst ist :-)
danke.

z0iD
13.09.2007, 17:55:57
wollte nochmal daruf hinweisen, dass mein problem noch nicht gelöst ist :-)
danke.

http://www.lugbz.org/documents/smart-questions_de.html#noanswer

defabricator
13.09.2007, 18:27:11
Hast Du die Möglichkeit, php auf Server 2 zu aktualisieren? 5.0.1 ist nicht so die tolle Idee, was Du allein schon anWarning: %v%v() [function.%v]:sehen kannst. Da gab's noch das eine oder andere Problemchen.


Probier doch bitte mal direkt vor Zeile 79 in funktionen.phpecho realpath('..') - "<br />";
echo realpath('../gfx');aus.

N'Koto Zinde
17.09.2007, 14:07:47
ich hab das mal eingefügt vor

if(imagejpeg($thumb,"$name[dirname]/tn_$name[basename]",100)) {

ergebnis:

0/srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx

die null kommt mir etwas komisch vor, aber vielleicht kannst du daraus was interpretieren.
das thumbnail wird nach wie vor nicht erstellt.

die möglichlichtkeit die php version zu erneuern hab ich wohl nicht, solange das mein host (evanzo) nicht macht. (oder doch?)

gruß.

defabricator
20.09.2007, 20:28:42
Tippfehler.
nicht - sondern .

Bitte noch einmal testen mit
echo '.. : ' . realpath('..') . " <br />";
echo '../gfx : ' . realpath('../gfx') . " <br />";
echo '../gfx/23 : ' . realpath('../gfx/23') . " <br />";

N'Koto Zinde
21.09.2007, 14:41:05
ergebnis:

.. : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms
../gfx : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx
../gfx/23 : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx/23

defabricator
22.09.2007, 17:50:43
und weiter$p = '/srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx/23';
echo ' exists:'; var_dump( file_exists($p) );
echo ' dir:'; var_dump( is_dir($p) );
echo ' readable:'; var_dump( is_readable($p) );
echo ' writable:'; var_dump( is_writable($p) );
echo ' exec:'; var_dump( is_executable($p) );

N'Koto Zinde
24.09.2007, 19:25:25
ergebnis:

.. : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms
../gfx : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx
../gfx/23 : /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx/23
exists:bool(true) dir:bool(true) readable:bool(true) writable:bool(false) exec:bool(false)

defabricator
24.09.2007, 22:45:07
Dein Skript hat keine Schreibrechte in /srv/www/vhosts/minis-gundelfingen.de/httpdocs/c3ms/gfx/23

http://de.wikipedia.org/wiki/Unix-Dateirechte

N'Koto Zinde
24.09.2007, 23:45:17
scheiße, und dann wars doch so banal. ärgert mich.
trotzdem vielen dank. es geht wieder.

Tumasch
13.12.2007, 12:03:51
Und, gibt's die '../gfx/23/tn_bild63.jpg'?