Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

wechselnder text





Frage

hallo. ich hab das schon auf den verscheidensten homepages gesehn. oft sind solchhe "random pictures" bei denen bei jedem mal wo man die seite betritt ein anderes bild kommt. das gibts aber auch mit text. noch mal kurz beschrieben was ich will: den code, wo man auch verschiedenen sachen (z.b. versch. begrüßungen) reinschreibt, und jedes mal wenn man die seite betritt ist eine andere begrüßung, also es kommt halt zufällig eines von den texten die man irgendwo im code reingeschrieben hat. tut mir leid wenn ich mich nicht so gut ausdrücke, ich hab nicht viel erfahrung mit homepages, ich hoffe ihr versteht was ich meine, und könntmir vielleicht auch noch helfen, das wär echt super!! ganz liebe grüße sophie

Antwort 1 von Friedel

Sowas kannst du mit jeder beliebigen Scriptsprache machen, die für Webseiten geeignet ist. Am meisten verbreitet sind dabei JavaScript und Php. Ersteres kannst du einfach in deine Seite einbauen. Es wird vom Browser des Besuchers ausgeführt. Der Besucher kann JavaScript deaktivieren. Letzteres wird auf dem Server ausgeführt. Dein Provider muss das also unterstützen.

Antwort 2 von Nessus

Hi,

via PHP kein Problem. Einfach in die Website einbauen, als *.php abspeicher.

<?
$random_text = array("Random Text 1",
                    "Random Text 2",
                    "Random Text 3",
                    "Random Text 4",
                    "Random Text 5");
srand(time());
$sizeof = count($random_text);
$random = (rand()%$sizeof);
print("$random_text[$random]");
?>


HTH

Nessus

Antwort 3 von Solo

Hi, ein Beispeil für PHP kannst du hier http://www.it-development.de/forum/showthread.php?threadid=6700 finden.

MfG

Antwort 4 von JLM

Hallo

Hier findest du einen Java Script dafür

http://www.javarea.de/index.php3?opencat=Javascript&subcat=Text-Ef...

Gruss
JLM

Antwort 5 von blubbsi

danke danke danke :)
ihr habt mir damit eine große freude gemacht!

ich hab jetzt so um die 30 Songtextteile eingebaut. Aber komischerweise kommen immer nur die selben, also meißtens nur die ersten 10, auch wenn ich 100 mal auf aktu klick... ziemlich seltsam.. naja, vielleicht wieß ja jemand was ich falsch gemacht hab. (www.ameisen.cc/ameisenqeeny -> Links/charts, falls ihr schaun wollt)

lg

Antwort 6 von Nessus

Hi,

mal eine dumme Frage: Warum hast du nicht die PHP-Lösung gewählt?
Die hätte unabhängig der eingesetzten Clientumgebung funktioniert, zumal du ja schon php-Seiten einsetzt.
JS läuft nicht auf jedem Client, teilweise bekommt der Besucher gar nichts angezeigt.

Warum es nicht richtig funktioniert?
Du bekommst zur Zeit eine Anzeige der ersten 9 Texte, da du die Anzahl der Textzeilen vergessen hast zu ändern.

HTH

Nessus

Antwort 7 von blubbsi

hmm
nessus, ich ähm.. bin eigentlich ein pc-noob.. und php sagt mir zum beispiel überhaupt nichts, aber du brauchst es auch gar nicht zu erklären, wird wohl auch so ne komische sprache sein. ich hab zuerst deinen code probiert, aber, wie gesag, ich hab nicht viel ahnung von sowas, hab ihn einfach kopiert, und eingefügt, und geschaut ob was kommt, is nix gekommen, dann hab ich einfach eine der anderen lösungen genommen. falls du lust hast kannst du mir ja sagen was ich da verndern muss oder was ich falsch gemacht hab. aber falls es zu kompliziert ist, versuchs erst gar nicht :) kann aber auch sein das ameisen.cc das php oder wie das heißt nicht ünterstützt... is ja nur ein chat mit der nebenfunktion einer nickpage.. auf der startseite geht beispielsweise NUR html... naja.. wie auch immer, ich hab jetzt jedenfalls diese anzahl der ää dinger vergrößert, auf die anzahl der texte sie ich eingefügt hab, und jetzt gehts, vielen dank für den tipp!

liebe grüße
blubbsi

Antwort 8 von Friedel

Zuerts mal solltest du die Scheinlinks entfernen. Wenn man auf "Links/Charts" klickt passiert überhaupt nichts. Logisch. Der Text enthält ja keinen Link, obwohl du durch das Unterstreichen den Anschein erweckst, als sei da einer. Links auf der Seite steh noch mal "Links/Charts". Das sieht aber nicht aus wie ein Link. Die Farbe stimmt nicht und unterstrichen ist es auch nicht. Nich jeder deiner Besucher wird den Quellcode analysieren um zu suchen wo du deine Links versteckst.

Die Anzahl der Textzeilen hast jetzt zwar geändert, aber sie ist natürlich immer noch falsch. Da du sie von von 1 bis 25 durchnumeriert hast, sind es 25 Stück. Nicht 26.

In den Zeilen
Zitat:
messages = new Array
bis einschließlich
Zitat:
document.write("<b>" + message + "</font>")
fehlt jeweils am Ende ein Semikolon.

Die Zeile
Zitat:
document.write("<b>" + message + "</font>")
enthält zusätzlich den Fehler, dass du mit
Zitat:
<b>
einen fettgedruckten Bereich anfängst und mit
Zitat:
</font>
etwas ganz anderes beendest. Ersetze mal
Zitat:
</font>
durch
Zitat:
</b>
.

Antwort 9 von rfb

@Friedel:
halte doch dem Scriptautoren zugute, dass er vor ca. 6 Jahren sein Copyright auf diese paar Zeilen Code gesetzt hat, ich hoffe mal, ihm ist dies und die von dir erwähnten Fehler selbst indessen peinlich...

Antwort 10 von Blubbsi

hallo..
ja - danke für die kritik, aber ich glaub ihr erwartet euch zu viel von mir. ich bin ein ganz normaler mensch, der noch nicht ein einziges jahr informatik besucht hat, und dem auch sonst keine zusätzlichen kenntnisse erklärt wurden. ich habe die homepage nur weil sie zu dem chat dazu gehört, und man da nicht wissenmuss was html ist, blos ein paar felder ausfüllen muss. eigentlich ähnlich wie bei sms.at nur mit noch ein paar mehr möglichkeiten. ich kann aber das design der links nicht ändern. das heißt ich kann keinen titel eingeben, sie also auch nicht unterstrichen machen, sondern blos die farbe wählen, und da fand ich schwarz als einzige einigermassen passende.

und die fehler im code hab ich versucht auszubessern. den hab ich aber auch blos kopiert, und ja, das mit der 26/25 war n doofer fehler von mir, danke für den hinweis :)

was ist denn ein(e) semikolon?

Antwort 11 von rfb

@Blubbsi:

Ein Semikolon ist dieses Zeichen ; (Strichpunkt)
Es dient bei javascript dazu, die einzelnen Befehle voneinander zu trennen und muss daher in der Regel ans Ende einer Zeile.

Dass das Script nicht von dir stammt ist bekannt, die Kritik bezog sich auf den Scriptautoren der diesen fehlerhaften Kram nach 6 Jahren immer noch unkorrigiert veröffentlicht und darauf auch noch einen Copyright-Vermerk setzt.

Antwort 12 von rfb

eine etwas modernere Variante ohne Fehler und ohne jedesmal Neuladen:

 <html>
<head>
<script type="text/javascript">
<!--
function mitteilung() {
var Nachricht = new Array("news1", "noch mehr news", "usw.");

// Hier einfach die Nachrichten im Format ("m1", "m2", ... ,"mn") einfügen, Anzahl berechnet das Script selber!
//#####################################################################//

var anz=Nachricht.length-1;
var aktuell=Nachricht[Math.min(Math.round(Math.random()*anz),anz)];
document.getElementById("news").firstChild.data=aktuell;
}
//-->
</script>
</head> 
<body onload="mitteilung()">
<p>Die heutige Botschaft lautet <span id="news">Geiz ist geil</span></p>
<p>weitere Botschaften: <a href="javascript:mitteilung()">gibts über diesen Link</a></p>
</body>
</html>


Antwort 13 von blubbsi

hallo rfb
ich hab natürlich auch deinen code probiert. so ganz hab ich mich nicht ausgekannt, aber ich denk mal da wo geiz ist geil steht kommt das rein was immer am anfang angezeigt wird, und nach diesem new array alle andren, oder?
und:
// Hier einfach die Nachrichten im Format ("m1", "m2", ... ,"mn") einfügen, Anzahl berechnet das Script selber!
//#####################################################################//
das versteh ich überhaupt nicht, wozu das is. wenn ich statt diesen m´s was reinschreib kommt das gar nicht. und noch etwas: is es möglich dass man enters reinbringt? der befehlt <br> wird ja als <br> angezeigt, und wenn ich einfach enter drück, dann funktiert das ganze nicht mehr.

Antwort 14 von rfb

die von dir zitierten Zeilen die mit // anfangen kannst du löschen, das sind Kommentarzeilen und die vielen # dienten dazu, dass hier im Supportnet der Zeilenumbruch nicht mitten in den JavaScript-Befehlen stattfindet.
Einfügen musst du deine News hinter "new Array(", in dem Format wie im Kommentar angegeben.
Es wird tatsächlich statt "Geiz ist geil" eingefügt, und <br> wird ignoriert. Wenn Zeilenumbrüche darin vorkommen sollen, müsste das Script umgeschrieben werden:
...
 <script type="text/javascript"> 
<!-- 
function mitteilung() { 
var Nachricht = new Array("news1", "noch mehr news", "usw.", "new#mit#zeilenumbruch"); 
var anz=Nachricht.length-1;
var aktuell=Nachricht[Math.min(Math.round(Math.random()*anz),anz)];
var kn=document.getElementById("news").childNodes.length;
for (j=1; j<kn; j++) {
var Knoten = document.getElementById("news").lastChild;
var verschwunden = document.getElementById("news").removeChild(Knoten);
}
var a=aktuell.split("#");
var z=a.length;
document.getElementById("news").firstChild.data=a[0];
for (j=1; j<z; j++) {
var zeile=document.createElement("br");
var text = document.createTextNode(a[j]);
document.getElementById("news").appendChild(zeile);
document.getElementById("news").appendChild(text);
}
}
//-->
</script>


wenn du jetzt in die News ein # einfügst, wird dort anschließend ein <br> eingefügt.

Antwort 15 von rfb

Nachtrag: achte darauf, dass dein new Array ... bis zu ); wirklich in einer zeile steht, sonst könnte das Script evtl Probleme haben.

Antwort 16 von timoxy

kann mir jetzt noch einer sagen, wie mann wenn man diesen php code...

<?
$random_text = array("Random Text 1",
"Random Text 2",
"Random Text 3",
"Random Text 4",
"Random Text 5");
srand(time());
$sizeof = count($random_text);
$random = (rand()%$sizeof);
print("$random_text[$random]");
?>

...benutzt die einselnen random texte in *.txt dateien auslagert

please :-)

Timo

Antwort 17 von rfb

Falsche Gruppe, sowas gehört nach PHP. Es ist auch keine gute Idee für sowas einen uralten Thread neu zu beleben.

Fazit: stell bitte eine neue Anfrage in der richtigen Gruppe.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: