Computerhilfen.de Logo
Forum
Tipps
News

php befehl für zeilenumbruch?

hallo alle zusammen

kann mir einer vielleicht sagen wie der befhelt für eine zeilenumbruch ist?

MFG
Aggroboy2005


Antworten zu php befehl für zeilenumbruch?:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

ja aber wenn ich \n eingebe
dann haut das nicht so richtig hin

also ich will bei einem gästebuch
machen das in der überschrift da wo der name und die e-mail adresse usw sind
da will ich datum uhrzeit und wochentag unter ein anderen schreiben.

hier mal der ganze script:

Zitat

<?
#######################################################################
##  Dieses Gästebuch wurde in einer Geminschaftsarbeit mehrerer      ##
##  Mitglieder von computerhilfen.de entwickelt. Es soll all jenen,  ##
##  die sich immer wieder fragen: "Gästebuch? Wie geht das?" zeigen, ##
##  wie man ein einfaches Gästebuch erstellt.                        ##
##  Es ist auch nicht das ultimative Gästebuch, sondern nur ein Wink ##
##  in die richtige Richtung. Im Detail waren daran beteiligt:       ##
##                                                                   ##
##  Erster Entwurf und Grundfunktionen        : Jan190480            ##
##  Optimierung des Lese- und Schreibzugriffs : JoSsiF, Mario        ##
##  Verteilung der Einträge auf mehrere Sieten: Spawn                ##
##  Stylesheet-Implementierung                : Der olle Schwoebel   ##
##                                                                   ##
##  Viel Spaß mit dem Gästebuch. Fragen können gerne                 ##
##  direkt an die einzelnen Mitlieder gerichtet werden               ##
##  oder im Forum gepostet werden.                                   ##
##                                                                   ##
##  2005 | computerhilfen.de                                         ##
##                                                                   ##
#######################################################################



##  Der PHP-Teil. Ohne PHP (oder einer anderen serverseitigen        ##
##  Programmiersprache (wie z.B. Perl)) wird man kein Gästebuch zum  ##
##  Laufen bekommen.                                                 ##



### Konfiguration (auch wenn's hier noch nicht ganz so viel zu konfigurieren gibt *g*)
#########################

$ppp = 5; // Anzahl der Beiträge, die pro Seite ausgegeben werden sollen
$textfile = "myGB.txt"; // Name der Textdatei, in der die Einträge gespeichert werden

### Ende Konfiguration #################################
########################################################


/*
$page initialisieren (der Wert entspricht der aktuellen Seite der Gästebucheinträge)
Beim ersten Aufruf (keine Seite gewählt) wird diese auf 1 gesetzt

Die Variable wird immer aus dem superglobalen Array $_REQUEST[] herausgezogen,
um auch auf solchen Servern einen Wert zu erhalten, auf denen die PHP-Variable
'register_gobals' auf 'Off' gesetzt ist
*/
if (!$_REQUEST['page'])
{
 $page = 1;
}
else
{
 $page = $_REQUEST['page'];
}

// Script wird nur ausgeführt wenn der Benutzer auf "Eintragen" gedrückt hat
if ($_POST['submit'])
{
 //Alles in eine Variable hintereinander schreiben
 $GBeintrag = $_POST['myGBname']."|"; // der Name aus dem Formular
 $GBeintrag .= $_POST['myGBhp']."|"; // die Website aus dem Formular
 $GBeintrag .= $_POST['myGBmail']."|"; // die Mail-Adresse aus dem Formular
 $GBeintrag .= date("d.m.y H:i:s D M j ")."|"; // das Datum aus dem Formular, gleich formatiert

 /*
 Das Zeichen '|' wird als Trennzeichen in der Textdatei des Gästebuchs verwendet.
 Falls jemand in der nachricht ein | verwendet hat, sollten wir das
 ersetzen, da sonst beim auslesen Fehler auftauchen
 */
 $_POST['myGBtext'] = str_replace("|", "<!strich!>", $_POST['myGBtext']);

 // Zeilenumbrüche entfernen, da anhand dieser sonst die Trennung
  // der Datensätze erfolgen würde
 $_POST['myGBtext'] = str_replace("\r\n", "<!umbruch!>", $_POST['myGBtext']);
 $_POST['myGBtext'] = str_replace("\r", "<!umbruch!>", $_POST['myGBtext']);
 $_POST['myGBtext'] = str_replace("\n", "<!umbruch!>", $_POST['myGBtext']);

 // Umbruch als Trennzeichen am Ende des Datensatzes hinzufügen
 $GBeintrag .= $_POST['myGBtext']."\r\n";

 /*
 Den Eintrag in die Textdatei schreiben und dabei vor
 gleichzeitigem Mehrfachzugriff schützen
 */
 $openfile = fopen($textfile, "a");
 flock($openfile, 2);
 fwrite($openfile, $GBeintrag);
 flock($openfile, 3);
 fclose($openfile);
}
?>

<!--
Hier der Allgemein bekannte HTML-Teil welcher
das Aussehen der Seite und damit das des GBs bestimmt
Hier kann man nach belieben alles anpassen bis auf
Bestehen bleiben sollten jedoch die integrierten
PHP-Anweisungen welche sich zwischen <? //und ?> befinden.
Sebstverständlich können diese natürlich an eine andere Stelle
verfrachtet werden.
//-->

<!-- KOPF DATEN //-->
<html>
<head>
<title>Mein G&auml;stebuch</title>
<style type="text/css">
 body {background-color: #FFFFFF;}

 .GBtable {border: 1px solid #000000;
           border-collapse: collapse;
           width: 400px;}

 .GBhead {background-color: #0000FF;
         color: #FFFFFF;
         font-weight: bold;}

 .GBinput {background-color: #00FFFF;
           border: 1px solid #000000;}

 .GBcontent {background-color: #FFFFFF;}

 a.GBlink:link, a.GBlink:visited, a.GBlink:hover, a.GBlink:active {
    text-decoration: none;
    color: #FFFFFF;
  }
</style>
</head>
<body>

<center>
<h1>Titel des G&auml;stebuchs</h1>

<!-- EINGABE TEIL //-->
<form action="<?=$PHP_SELF?>" method="POST">
<table class="GBtable">
 <tr class="GBhead">
   <td colspan="2">Hier ins G&auml;stebuch eintragen</td>
 </tr>
 <tr>
   <td>Dein Name</td>
   <td><input class="GBinput" name="myGBname" size="30"></td>
 </tr>
 <tr>
   <td>Deine Homepage</td>
   <td><input class="GBinput" name="myGBhp" size="30" value="http://"></td>
 </tr>
 <tr>
   <td>Deine Email</td>
   <td><input class="GBinput" name="myGBmail" size="30"></td>
 </tr>
 <tr>
   <td colspan="2" align="center">Deine Nachricht</td>
 </tr>
 <tr>
   <td colspan="2" align="center"><textarea class="GBinput" cols="45" rows="10"
name="myGBtext"></textarea></td>
 </tr>
 <tr>
   <td colspan="2" align="center">
      <input type="submit" name="submit" value="Eintragen">
    </td>
 </tr>
 </form>
</table>
<br><br>

<!-- EINTRÄGE ANZEIGEN -->
<?
/*
Hier das Gästebuch öffnen und alle Einträge in ein Array einlesen;
Fehlermeldung bei noch nicht vorhandener Datei wird unterdrückt
und die Datei automatisch angelegt
*/
$eintraege = @file($textfile);

/*
Anzeigen der Einträge

Solange Einträge vorhanden sind, wird eine Schleife durchlaufen
von hinten nach vorne (also neueste zuerst)

Hier wird gleichzeitig die Logik für die dynamische Generierung
der Seitenlinks erzeugt
*/
$start = (count($eintraege) - 1) - $ppp * ($page - 1);
$stop = (count($eintraege) - 1) - $ppp * ($page - 1) - $ppp + 1;
if ($start > (count($eintraege) - 1))
{
 $start = count($eintraege) - 1;
}
if ($stop < 0)
{
 $stop = 0;
}
for ($a = $start; $a >= $stop; $a--)
{
 // Die einzelnen Teile des Eintrags extrahieren
 $Eintrag = explode("|", $eintraege[$a]);

 /*
 Dann noch die Sonderstrings wie "<!umbruch!>" und "<!strich!>" wieder
 in die ursprünglichen zeichen ersetzen
 */
 $Eintrag[4] = str_replace("<!umbruch!>", "\r\n", $Eintrag[4]);
 $Eintrag[4] = str_replace("<!strich!>", "|", $Eintrag[4]);

 //und jetzt alles in Tabellen ausgeben
?>
<table class="GBtable">
 <tr class="GBhead">
 <td>Von : <?=$Eintrag[0]?></td>
 <td>am : <?=$Eintrag[3]?></td>
 <td><a class="GBlink" href="mailto:<?=$Eintrag[2]?>">Email</a></td>
 <td><a class="GBlink" href="<?=$Eintrag[1]?>" target="_blank">Homepage</td>
 </tr>
 <tr>
 <td colspan="4"><?=nl2br($Eintrag[4])?></td>
 </tr>
</table>
<br>
<?
}
//  $max gibt die Anzahl der Einträge an
$max = count($eintraege);
//  jetzt noch fix die daraus resultierenden Seiten berechnen
if ($max == 0)
{
 $pages = 1;
}
else
{
 $pages = intval(($max - 1) / $ppp) + 1;
}
?>
<p align='center'>
<?
if ($page > 1)
{
?>
   <a href='<?=$PHP_SELF?>?page=1'>|<&nbsp;</a>
   <a href='<?=$PHP_SELF?>?page=<?=($page - 1)?>'><&nbsp;</a>
<?
}
for ($i = 1; $i <= $pages; $i++)
{
 if ($i == $page)
 {
 ?>
   <?=$i?>&nbsp;
 <?
 }
 else
 {
 ?>
   <a href='<?=$PHP_SELF?>?page=<?=$i?>'><?=$i?>&nbsp;</a>
 <?
 }
}
if($page < $pages)
{
?>
   <a href='<?=$PHP_SELF?>?page=<?=($page + 1)?>'>>&nbsp;</a>
   <a href='<?=$PHP_SELF?>?page=<?=$pages?>'>>|</a>
<?
}
?>
<br>Es sind <b><?=$max?></b> Eintr&auml;ge im G&auml;stebuch</p>
</center>

</body>
</html>

und hier mal wo das datum die uhrzeit und der wochentag im moment sind

 
Zitat
  $GBeintrag .= date("d.m.y H:i:s D")."|"; // das Datum aus dem Formular, gleich formatiert   


also wenn mir jemand schreiben würde wie das geht wär super

danke
mfg
Aggroboy2005

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Wenn ich das Richtig verstanden haben, soll die Ausgabe dann in etwa so sein:

01.02.03
05:06
Dienstag

Wenn das so richtig ist, dann kannst du das so schreiben beim Eintragen-Teil:

$GBeintrag .= date("d.m.y<b\\r>H:i:s<b\\r>D", time()).'|';

das <b\\r> stellt einen "HTML-Zeilenumbruch" dar, also <br> (wobei das r maskiert wird und das Slash auch nochmal)

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

yo das at hst schon mal funktioniert
wenn es jetzt noch geht das der wochentag vll in deutsch ist

am : 30.10.07
21:29:10
Tue

so siehts im moment aus

ok danke schon mal

MFG
Aggroboy2005

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Also meine Lösung ist jetzt wahrscheinlich zu kompliziert...geht vlt. einfacher.

also bei der Date funktion den Wochentag extra rausnehmen und dann extra bestimmen lassen und dann den englischen Namen mit dem Deutschen erstzen.

switch(date(D)){
case "Mon":
print("Montag");
break;

case "Tue":
print("Dienstag");
break;
...
}

 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Ja, so ähnlich hätte ich das auch vorgeschlagen, aber das geht auch "schöner" ;)

$wochentag = array(
    'Sun'=>'Sonntag',
    'Mon'=>'Montag',
    'Tue'=>'Dienstag',
    'Wed'=>'Mittwoch',
    'Thu'=>'Donnerstag',
    'Fri'=>'Freitag',
    'Sat'=>'Samstag'
);

$GBeintrag .= date("d.m.y", time()).'<br>';
$GBeintrag .= date("H:i:s", time()).'<br>';
$GBeintrag .= $wochentag[date("D", time())].'|';

Also den (englischen) Wochentag an das Array "übergeben", dann wird der deutsche Name zurückgegeben bzw. zugeordnet.
 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

wieso geht das nicht so?
Also jetzt wird kein wochentag angezeigt

 

Zitat

 //Alles in eine Variable hintereinander schreiben
 $GBeintrag = $_POST['myGBname']."|"; // der Name aus dem Formular
 $GBeintrag .= $_POST['myGBhp']."|"; // die Website aus dem Formular
 $GBeintrag .= $_POST['myGBmail']."|"; // die Mail-Adresse aus dem Formular
 $GBeintrag .= date("d.m.y", time()).'<br>';
 $GBeintrag .= date("H:i:s", time()).'<br>';
 $GBeintrag .= $wochentag[date("D", time())].'|';  // das Datum aus dem Formular, gleich formatiert
 $wochentag = array(
    'Sun'=>'Sonntag',
    'Mon'=>'Montag',
    'Tue'=>'Dienstag',
    'Wed'=>'Mittwoch',
    'Thu'=>'Donnerstag',
    'Fri'=>'Freitag',
    'Sat'=>'Samstag'
);


Danke schonmal 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Ganz einfach, du hast das Array $wochentag deklariert NACHDEM du darauf zugreift.

Das Array müsstest du also noch für $GBeintrag setzen oder zumindest vor
$GBeintrag .= $wochentag[date("D", time())].'|';

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

hä wie jetzt?
kannst du mir das vll so um schreiben das ich es nur einfügen muss?

wär cool

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Also das sollte jetzt nicht das Problem sein, mit logischem überlegen sollte man das ja auch hinbekommen.

Aus dem Leben betrachtet brauchst du ja auch erst Geld bevor du was einkaufst und nicht umgekehrt, der Geldautomat prüft auch schon BEVOR er das Geld ausspuckt ob du genügend auf dem Konto hast.

Also setzt du das Array auch VOR die Stelle im Code an der du darauf zugreifst:


$wochentag = array(
    'Sun'=>'Sonntag',
    'Mon'=>'Montag',
    'Tue'=>'Dienstag',
    'Wed'=>'Mittwoch',
    'Thu'=>'Donnerstag',
    'Fri'=>'Freitag',
    'Sat'=>'Samstag'
);
 //Alles in eine Variable hintereinander schreiben
 $GBeintrag = $_POST['myGBname']."|"; // der Name aus dem Formular
 $GBeintrag .= $_POST['myGBhp']."|"; // die Website aus dem Formular
 $GBeintrag .= $_POST['myGBmail']."|"; // die Mail-Adresse aus dem Formular
 $GBeintrag .= date("d.m.y", time()).'<br>';
 $GBeintrag .= date("H:i:s", time()).'<br>';
 $GBeintrag .= $wochentag[date("D", time())].'|';  // das Datum aus dem Formular, gleich formatiert

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

yo vielen dank


« vertikales ausrichten mit cssWie veröffentliche ich ein Bild auf www.computerhilfen.de »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!