• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Mehrzeiliges Meldungsfenster mit PHP/Js

dudl313

New member
Hallo Gemeinde,

ich bin ganz neu hier im Forum und will euch deshalb erst mal ein paar Infos über mich geben, bevor ich euch mit meinen Fragen bombardiere.

Was die serverseitige Programmierung betrifft, bin ich totaler Anfänger. Ich versuche mich im Moment mit PHP und habe dazu alle eine bisherigen Kenntnisse aus dem Inet. Allerdings habe ich gute Kenntnisse in anderen Sprachen (VB und VBA), die mir hier allerdings nichtweiterhelfen.

So, nun gleich zu meiner ersten Frage: Wie kann ich ein Meldungsfenster mit mehrzeiligen Text erstellen?
Mein bisheriger Code sieht so aus
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Unbenanntes Dokument</title>
</head>

<body>

<?php
	function MsgBox($str1)
	{
	echo "<script language=\"javascript\">\n";
	echo "alert('$str1');";
	echo "</script>\n";
	}
	
	$str1="Falsche Eingabe";
	if ($_POST["pw"]=="test")
		echo "Eingabe OK";
	else
		{
		MsgBox($str1);
		}
?>

</body>
</html>
Ich stelle mir das so vor, das ich der Funktion MsgBox zwei Parameter übergebe und diese dann in zwei Zeilen angezeigt werden. Habe es schon mit \n probiert, das klappt aber nicht - da wird dann nur ein leeres, weißes Browserfenster angezeigt.

So, hoffe der Post ist nicht zu lange und danke schon mal für eure Hilfe

Mfg dudl313
 
Du schreibst ja in den Quelltext, also brauchst du als Zeilenumbruch den HTML Tag <br>.
Wenn du in der alert Box zweispaltig werden willst, dann funktioniert das sehr wohl mit \n.

Das würde dann so aussehen:
PHP:
<?php
function MsgBox($eStr1,$eStr2) 	{
  echo '<script type="text/javascript">\n'.
    'alert("'.$eStr1.'\n'.$eStr2.'");'.
  '</script>\n';
}
$str1="Falsche";
$str2="Eingabe";

if ($_POST["pw"]=="test") {
  echo "Eingabe OK";
} else {
  MsgBox($str1,$str2);
}
?>
 
Erst mal danke für die schnelle Antwort. Leider klappt das so auch nicht. Habe deinen ganzen Cocd in mein Script rein kopiert aber nun erhalte gar keine Meldung mehr. Nur ein weißes Browserfenster mit \n ganz oben links.

Ich bin da echt am verzweifeln. Habe schon alles Mögliche mit dieser alert-Funktion und \n ausprobiert, aber nie klappts - irgendwie muß das doch gehen, vielleicht hast du ja noch andere Ideen.
 
Code:
   <?php
function MsgBox($eStr1,$eStr2){
	echo '<script type="text/javascript">
alert("'.$eStr1.'\n'.$eStr2.'");
</script>';
}
$str1="Falsche";
$str2="Eingabe";

if ($_POST["pw"]=="test") {
	echo "Eingabe OK";
}
else {
	MsgBox($str1,$str2);
}
?>

EDIT: Wobei mir das Ganze nicht so besonders gefällt ich würde da eher mit einem Paramter der Funktion arbeiten und dann mittels preg_replace alle Zeilenumbrüche für JS maskieren.
 
Zuletzt bearbeitet:
Zurück
Oben