|
|
|
|
funktion wird nicht ausgeführt |
0cool
Junior Member
Dabei seit: 03.02.2005
Beiträge: 169
|
|
funktion wird nicht ausgeführt |
|
Hey Leute,
ich habe mal wieder ein Problem mit PHP. Die Funktion htmlentities wird nicht ausgeführt. Ich will eine zufällige reinfolge von Zitaten erstellen. In diesen Zitaten soll es egal sein, wenn umlaute verwendet werden. Leider werden die Umlaute nicht als umlaute dargestellt, sondern der HTML code für Umlaute wird angezeigt.
Damit ihr mir ichtig helfen könnt, hier der code
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
|
<?PHP
$datei = "motto.inc";
$temp = file($datei);
$max = (count($temp))/2;
for ($i = 0; $i < $max; $i++){
$motto [$i][Zitat] = htmlentities($temp[2 * $i]);
$motto [$i][Quelle] = htmlentities($temp[2 * $i +1]);
}
//Variablen vergeben
$maxwert = count ($motto)-1;
$nr = zufall(0, $maxwert);
$zitat = $motto[$nr][Zitat];
$quelle = $motto[$nr][Quelle];
ausgabe ($zitat, $quelle);
//Funktion für die zufällige auswahl der Zitate
function zufall ($min, $max){
srand ((double)microtime()*1000000);
return (rand($min, $max));
}
//Ausgabe der Daten
function ausgabe ($zitat, $quelle){
echo "<div align=\"right\">";
echo "<b>$zitat</b><br>";
echo "<small><i>$quelle.</i></small>";
echo "</div>";
echo "<hr>";
}
?>
|
|
Dazu noch die motto.inc
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
|
Alt wird man wohl, wer aber klug?
Johann Wolfgang von Goethe
Ich habe hier bloß ein Amt und keine Meinung
Friedrich Schiller
Computer sind die Inteligentesten Idioten, die es gibt
Norman Mailer
Politik ist das Paradies zungenfertiger Schwätzer
Georg Bernhard Shaw
Die Welt ist gross genug, das wir alle darin Unrecht haben können!
Arno Schmidt
|
|
Danke für eure Hilfe.
Gruß
0cool
__________________
Es gibt keine blöden Fragen, nur blöde Antworten!!!
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von 0cool: 21.10.2009 00:08.
|
|
16.10.2009 16:00 |
|
|
HeaD
Hoffnungsloser Sozialfall in Behandlung bei Styx
Dabei seit: 31.08.2001
Beiträge: 4.142
Herkunft: Mama
|
|
Probier es mal mit htmlspecialchars() statt htmlentities()...
Soweit ich weiß ist htmlentities() etwas "radikaler" und wandelt wirklich ALLES in HTML um...
__________________
|
|
16.10.2009 16:21 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Unabhängig von der Umlautgeschichte: schau dir mal array_rand() an.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
16.10.2009 17:09 |
|
|
HeaD
Hoffnungsloser Sozialfall in Behandlung bei Styx
Dabei seit: 31.08.2001
Beiträge: 4.142
Herkunft: Mama
|
|
RE: PHP funktion wird nicht ausgeführt |
|
Zitat: |
Original von 0cool
@LX: ich hatte zuerst die ganze geschichte als array laufen aber jetzt wollte ich mal die Variante probieren.
|
Öhm, das ist immer noch ein Array !?
__________________
|
|
16.10.2009 21:09 |
|
|
HeaD
Hoffnungsloser Sozialfall in Behandlung bei Styx
Dabei seit: 31.08.2001
Beiträge: 4.142
Herkunft: Mama
|
|
Ich weiß nicht ob ich da was falsch verstehe, aber es ist doch egal ob das Array aus einer Datei gefüllt wird oder sonstwo. Es ist letztendlich das selbe, ein Array. Diese Random Funktion funktioniert trotzdem...
Dazu könntest du das Zitat und den Autor in eine Zeile schrieben und mit einem Trennzeichen arbeiten, dann gibt es auch nicht so schnell ein Durcheinander...
Zu dem Problem mit den Umlauten fällt mir im Moment nichts anderes ein als eine Funktion schreiben die diese Zeichen sucht und ersetzt. Dabei habe ich aber noch eine Frage, nämlich wieso Du die Umlaute nicht im HTML Code haben willst?
__________________
|
|
16.10.2009 23:53 |
|
|
HeaD
Hoffnungsloser Sozialfall in Behandlung bei Styx
Dabei seit: 31.08.2001
Beiträge: 4.142
Herkunft: Mama
|
|
Mit welchem Browser arbeitest Du denn? Ich hab Dein Script mal getestet und bei mir sind nur im Quellcode die HTML Codes für Umlaute.. Im Browser als Webseite selbst wird alles korrekt angezeigt..
__________________
|
|
17.10.2009 01:47 |
|
|
LX
El Comandante en Jefe
Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx
|
|
Kannst du uns mal einen Link zu dem Skript auf einem der Webserver geben? Bei mir funktioniert das Skript originalgetreu wie aus dem ersten Beitrag übernommen ebenfalls.
__________________ JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett
|
|
17.10.2009 13:45 |
|
|
HeaD
Hoffnungsloser Sozialfall in Behandlung bei Styx
Dabei seit: 31.08.2001
Beiträge: 4.142
Herkunft: Mama
|
|
Das hier ist jetzt nicht die Lösung zu Deinem Problem, aber ich würd Dir gern zeigen wie klein das Programm mit array_rand() sein kann
Ist ungetestet, sollte aber funktionieren...
Die PHP Datei:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
<?php
$datei = "motto.inc";
$temp = file($datei);
ausgabe ($temp[array_rand($temp)]);
function ausgabe ($zeile) {
$zitat = explode("µ", $zeile);
echo "<div align=\"right\">";
echo "<b>$zitat[0]</b><br>";
echo "<small><i>$zitat[1].</i></small>";
echo "</div>";
echo "<hr>";
}
?> |
|
die motto.inc
code: |
1:
2:
3:
4:
5:
|
Alt wird man wohl, wer aber klug?µJohann Wolfgang von Goethe
Ich habe hier bloß ein Amt und keine MeinungµFriedrich Schiller
Computer sind die Inteligentesten Idioten, die es gibtµNorman Mailer
Politik ist das Paradies zungenfertiger SchwätzerµGeorg Bernhard Shaw
Die Welt ist gross genug, das wir alle darin Unrecht haben können!µArno Schmidt |
|
Dabei kommt dann am Ende das selbe raus
__________________
|
|
17.10.2009 15:26 |
|
|
|
|
|
|