kl4Uz
ambestenwisser
|
Folgende Problemstellung: Ich möchte mit file_get_contents in einer Datei nach einem Begriff suchen, und dann, je nachdem ob er vorhanden ist oder nicht, einen anderen Inhalt in einen string schreiben. Soweit bin ich: $abfrage = file_get_contents("beispiel.txt");
if (preg_match(";kl4Uz;i", $abfrage))
Jetzt würde ich gerne in einem neuen String, nämlich $status abspeichern ob es vorhanden ist oder nicht. $status = "Vorhanden"
bzw. $status = "nicht vorhanden"
Also quasi eine "If-Schleife". Bisher hab ich das immer nur als echo ausgeben und da hat's wunderbar geklappt. Auf die selbe Weise in einem string speichern, klappt allerdings irgendwie nicht. Ja, ich bin ein totaler php newbie  Wäre dankbar wenn mir da jemand schnell helfen könnte! lg, kl4Uz
|
dio
Here to stay
|
Ich versteh leider die Fragestellung nicht ganz. Weißt du nicht, wie man in Dateien schreibt?
|
kl4Uz
ambestenwisser
|
Ich versteh leider die Fragestellung nicht ganz. Weißt du nicht, wie man in Dateien schreibt? Dachte mir schon, dass ich's etwas blöd formuliert habe... Anschauliches Beispiel: <?php
$datei = file_get_contents("http://beispiel.at/membersonline.htm");
if (preg_match(";kl4Uz;i", $datei))
{
echo "online";
}
else
{
echo "offline";
}
?>
Anstatt der echos würde ich "online" bzw. "offline" gerne in einen String schreiben. Ich hab das auch versucht, krieg aber dauernd Syntax Errors, da ich offensichtlich was falsch mache.
|
d3cod3
Legend...
|
$variable = blubb;
edit: dumm. da gehören eh " " hin
|
dio
Here to stay
|
Ich steig leider immer noch nicht hinter die Fragestellung  . Du willst nur der Variable $status den Wert "online" oder "offline" zuweisen? $status = "";
$datei = file_get_contents("http://beispiel.at/membersonline.htm");
if (preg_match(";kl4Uz;i", $datei))
{
$status = "online";
}
else
{
$status = "offline";
}
Wenn du in die Datei schreiben willst: http://at.php.net/fputs
|
kl4Uz
ambestenwisser
|
:Bash: Danke dio, ich Depp hab vergessen den String $status vor der Abfrage zu definieren  Hätte mir selber auffallen müssen  Danke jedenfalls!
|
dio
Here to stay
|
musst du normalerweise in PHP nicht
|
kl4Uz
ambestenwisser
|
musst du normalerweise in PHP nicht Irgendwo in dem ganzen php file liegt noch was im Argen... Seit ich diese Abfrage eingebaut habe, klappt gar nichts mehr... Die Abfrage ist eigentlich Teil einer dynamischen png Grafik, die ich für jemanden anderen gemacht habe...
<?php
header("Content-type: image/png");
$image = imagecreatefrompng("back2.png");
//imagecolorallocate($image, R, G, B) in HEX values
$font_black = imagecolorallocate($image, 2, 1, 8);
$font_blue = imagecolorallocate($image, 25, 0, 255);
$font_white = imagecolorallocate($image, 255, 255, 255);
$font_purple = imagecolorallocate($image, 150, 30, 205);
$font_green = imagecolorallocate($image, 50, 200, 70);
$select = rand(1,7);
if($select==1)$string = "I love my userbar!";
if($select==2)$string = "Even false things are true.";
if($select==3)$string = "hail my godess of chaos Diskordia!";
if($select==4)$string = "FNORD!";
if($select==5)$string = "Consult your pineal gland!";
if($select==6)$string = "PrincipiaDiscordia.com";
if($select==7)$string = "D I S K O R D I A";
$status = "";
$seite = file_get_contents("http://game.eternal-lands.com/online_players.htm");
if(preg_match(";Diskordia;i", $seite))
{
$status = "online";
}
else
{
$status = "offline";
}
//($image, fontsize, rightindent, downindent, data, txtcolour)
imagestring($image, 3, 12, 3, "DISKORDIA", $font_white);
imagestring($image, 3, 86, 3, "eris", $font_purple);
imagestring($image, 2, 10, 20, "ticker:", $font_black);
imagestring($image, 2, 60, 20, $string, $font_white);
imagestring($image, 2, 10, 30, "online status:", $font_purple);
imagestring($image, 2, 60, 30, $status, $font_white);
imagestring($image, 2, 10, 40, "selling:", $font_green);
imagestring($image, 2, 60, 40, "iron ore, steel greaves, etc", $font_white);
imagestring($image, 1, 342, 50, "k", $font_white);
imagepng($image);
imagedestroy($image);
?>
In ein Bild soll dynamisch Text geschrieben werden. Klappt eigentlich alles, außer eben diese Abfrage. Im 5. Imagestring sollte der string $status eingebaut werden. Will aber einfach nicht.
|
COLOSSUS
AdministratorGNUltra
|
"If-Schleife" Bitte nicht
|
kl4Uz
ambestenwisser
|
Bitte nicht  Absichtlich in "", weil ich ja weiß wie beliebt der Begriff hier ist
|
Burschi1620
24/7 Santa Claus
|
http://de.php.net/preg_matchsagt mir nur, dass du versuchen könntest die ; in deinem preg_match auf / zu ändern. Ich hab gerade keine "lust" das zu verstehen, einen versuch ists ja wert *g* (siehe beispiel 1436, selbe struktur)
|