Impressum
GoTo:
Home
 
Reporters Sans Frontières | Reporter ohne Grenzen die Amika Methode   
 
Lesezeichen [ Jobs # QR-Code # Sitemapper ]Do 21 Nov 2024 10:56:41


 huecker.com # Grundlagen der Programmierung.
--

 

. PHP L e k t i o n e n ( Thu Nov 21 10:56:41 2024 ) .

10 . HTML-Formulare und PHP.

PHP ermöglicht unter anderem auch, die für HTML-Seiten typischen Eingabefelder zu erzeugen, auszulesen - und die Eingaben zu speichern, sodass bei Bedarf eine eigene Datenbank für nahezu jeden Zweck entwickelt, gepflegt und genutzt werden kann.

 

. Eingaben erzeugen, auslesen und verarbeiten .


<?

if ( isset($name) == 0 || isset($c_name) == 0 ) {
  echo ( "<form action=form.php method=post>" );
  echo ( "<p>Bitte geben Sie Ihren Namen ein." );
  echo ( "<br><input type=text name=name size=30 maxlength=30>" );
  echo ( "<p>Wiederholen Sie bitte die Eingabe." );
  echo ( "<br><input type=text name=c_name size=30 maxlength=30>" );
  echo ( "<p><input type=reset value=Cancel><input type=submit value=Senden>" );
  echo ( "</form>" );
} elseif ( $name == "" || $c_name == "" ) {
  echo ( "Bitte Eingabefelder ausfüllen. | <a href=\"javascript:history.back()\">Korrektur</a>" );
} elseif ( $name != $c_name ) {
  echo ( "Wiederholung ungleich Eingabe. | <a href=\"javascript:history.back()\">Korrektur</a>" );
} else {
  echo ( "Die Eingabe ist korrekt. | <a href=\"/project/manual/php_man_j.shtml\">Ende</a>" );
};

?>
 

Für die Gestaltung von Formularen finden sich in der HTML-Umgebung zahlreiche Möglichkeiten. - Dazu zählen Texteingabefelder, Texteingabeboxen, Radio-Buttons, Check-Boxen, Listen und Pop-Menüs, - die bei Bedarf verwendet werden können.

Testen ( . Syntax Dateiname: name.php, - bspw. form.php ! . )

 

. Gästebucheintrag .


<?

$path = "/home/www/pub/fh1000/huecker.com/msw/php/samples/gb";
$file = "$path/.gb.count";

if ( file_exists ( $path ) == 0 ) { mkdir ( $path, 0777 ); };
if ( file_exists ( $file ) == 0 ) { touch ( $file ); };

if ( isset($name) == 0 || isset($email) == 0 || isset($note) == 0) {

  echo ( "<form action=gb_input.php method=post>" );

  echo ( "<p>Bitte geben Sie Ihren Namen ein." );
  echo ( "<br><input type=text name=name size=30 maxlength=30>" );

  echo ( "<p>Ihre E-Mail Adresse." );
  echo ( "<br><input type=text name=email size=30 maxlength=30>" );

  echo ( "<p>Ihr Beitrag zu unserem Gästebuch." );
  echo ( "<br><textarea name=note rows=6 cols=43 wrap=virtual></textarea>" );

  echo ( "<p><input type=reset value=Cancel><input type=submit value=Senden>" );
  echo ( "</form>" );

} elseif ( $name == "" || $email == "" || $note == "" ) {

  echo ( "Bitte Eingabefelder ausfüllen. | <a href=\"javascript:history.back()\">Korrektur</a>" );

} else {

  $fp = fopen($file, 'r+');
   flock ($fp, LOCK_SH);
   $count = fread($fp, 4096);
   rewind ( $fp );
   fwrite($fp, ++$count);
   fflush ($fp);
   flock ($fp, LOCK_UN);
  fclose($fp);

  $note = str_replace("\x0d", "<br>", $note);
  $note = str_replace("\n", "", $note);

  $fp = fopen ( "$path/$count.dat", 'w' );
   fwrite ( $fp, time() . "\n" ); // . Gästebuch schreiben
   fwrite ( $fp, "$name\n" ); // . Gästebuch schreiben
   fwrite ( $fp, "$email\n" ); // . Gästebuch schreiben
   fwrite ( $fp, "$note" ); // . Gästebuch schreiben
  fclose ( $fp );

  echo ( "<p>Danke für Ihren Beitrag. | <a href=\"/project/manual/php_man_j.shtml\">Exit</a>" );
  exit;
};
 
?>
 

Bei Formularen ist zu entscheiden: - Soll ihr Ergebnis für alle einsehbar sein, für eine Gruppe oder nur für den Eigentümer der Website. Im ersten Fall wird der Text zumeist in Dateien gespeichert, die bei Bedarf von allen eingesehen werden können, - im zweiten und dritten Fall wird er oftmals auch an den oder die Adressaten per E-Mail versandt.

Testen ( . Syntax Dateiname: name.php, - bspw. gb_input.php ! . )

 

. Gästebuchausgabe .


<?

$path = "/home/www/pub/fh1000/huecker.com/msw/php/samples/gb";

$handle = opendir ("$path");
while ($file = readdir ( $handle ) ) {
  if ( substr_count ( $file, '.dat' ) == 1 ) { $files[] = $file; };
};
closedir ( $handle );

rsort( $files ); // rsort = increasing (absteigend); sort = decreasing(aufsteigend);
foreach ( $files as $file ) {
  $fp = fopen ( "$path/$file", 'r' );
   $time = fgets ( $fp, 4096 );
   $name = fgets ( $fp, 4096 );
   $email = fgets ( $fp, 4096 );
   $note = fgets ( $fp, 4096 );
  fclose ( $fp );

  setlocale(LC_ALL, 'de_DE');
  $time = strftime ( "%A, %d. %B %Y %H:%M:%S %Z", $time );
  $name = chop ( $name );
  $email = chop ( $email );
  $note = chop ( $note );
  $note = stripslashes ( $note ); // (\"\'\n) -> (" ')

  echo ( "<p>--" );
  echo ( "<p>[ " . ++$count . " ] $time | <a href=\"mailto:$email\">E-Mail</a> * $name" );
  echo ( "<p>$note" );
};
 
?>
 

Für die Gestaltung einer dynamischen Website, wie einem Gästebuch, einer Pinnwand, einer ständig zu aktualisierenden Information, werden die Möglichkeiten genutzt, die von der Gestaltung statischer HTML-Seiten ( Tabellen, Formatierung etc. ) bekannt sind.

Testen ( . Syntax Dateiname: name.php, - bspw. gb_output.php ! . )


Formulare sind heute für den Eigentümer und die Besucher einer Website eine der bedeutsamsten Kommunikationsschnittstellen, - deren umsichtiger Gestaltung und Nutzung von daher . ganz besondere Aufmerksamkeit . gewidmet werden sollte.


--
[ Home | Top ]
[ . PHP Home . ]
Der Inhalt dieser Seite wurde am 31.08.2024 um 13.34 Uhr aktualisiert.
Navigation Seminare Magic Software Projekte Publikationen Kontakt Home
 
   huecker dot com * Germany | Datenschutz
© 1999, 2024 Franz-Josef Hücker. All Rights Reserved.
Contact Print Page LinkedIn follow me on twitter RSS Feeds & Podcasts