Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   PHP: Verhindern, dass beim Start Code ausgeführt wird (https://www.delphipraxis.net/45448-php-verhindern-dass-beim-start-code-ausgefuehrt-wird.html)

Gentleman 6. Mai 2005 15:56


PHP: Verhindern, dass beim Start Code ausgeführt wird
 
Hi!

Ich bin es schon wieder mit einem weiterem PHP Problem!

Ich habe mich inzwischen schon so einigermaßen mit PHP zurechtgefunden und auch schon einige Zeilen PHP programmiert. Allerdings bin ich auf folgendes Problem gestoßen:

Folgendes steht im Formtag:
Code:
<form method="post">
  <input type="text" name="edttest" />


  <input type="submit" name="btnsend" value="senden" />


</form>
und als PHP-Code:
Code:
<?php
  $user = $_POST['edttest'];
  echo "Hallo $user!";
?>
Wenn ich nun die PHP-Seite aufrufe, wird sofort der PHP-Code ausgeführt. Ich möchte aber, dass er erst ausgeführt wird, wenn man auf den Senden-Button klickt. Wie kann ich das realisieren?

thx im Voraus!

:dp:

[edit=sakura] [Klammern ersetzt] Mfg, sakura[/edit]

Wuaegner 6. Mai 2005 15:59

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
PHP Code in ne Datei auslagern die test.php heißt und das enthält:
Code:
<?php
  $user = $_POST['edttest'];
  echo "Hallo $user!";
?>
Bei deinem Form noch das hier einfügen:
Code:
<form method="post" [b]action="test.php"[/b]>
  <input type="text" name="edttest" />
 
  <input type="submit" name="btnsend" value="senden" />
 
</form>

Waldteufel 6. Mai 2005 16:02

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Hi.

Oder so:

Code:
<?php
  if ($_POST['edttest']) {
    $user = $_POST['edttest'];
    echo "Hallo $user!";
  }
?>

<form method="post">
  <input type="text" name="edttest" />


  <input type="submit" name="btnsend" value="senden" />


</form>
@Wuaegner : Nimm doch bitte [ code ] statt [ quote ]

Gentleman 6. Mai 2005 16:05

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Danke für die schnelle Hilfe!!! :mrgreen:

Funktioniert super!

bigg 6. Mai 2005 16:09

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
man muss es nicht zwingend in eine neue Datei auslagern!
du brauchst im prinzip nur einen Parameter in Action übergeben.

Oder eine zweite Möglichkeit wäre eine neue Varibale über Hidden-Inputs zu implentieren.

Code:
<input type="hidden" name="variable" value="wert">

Airblader 6. Mai 2005 16:58

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Schau in deinem 1. thread, da hab ich das doch schon - stilistisch vollkommen korrekt - eingebaut

@bigg
On hidden fields wird normal abgeraten, ähnlich wie bei globalen variablen in delphi ;)

alcaeus 6. Mai 2005 17:01

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Zitat:

Zitat von Airblader
On hidden fields wird normal abgeraten, ähnlich wie bei globalen variablen in delphi ;)

Das darfst du mir jetzt erklaeren. Sag mir mal wie du so ein Posting-Form ohne hidden Vars machen willst...

Greetz
alcaeus

Airblader 6. Mai 2005 17:16

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Zitat:

Zitat von alcaeus
Zitat:

Zitat von Airblader
On hidden fields wird normal abgeraten, ähnlich wie bei globalen variablen in delphi ;)

Das darfst du mir jetzt erklaeren. Sag mir mal wie du so ein Posting-Form ohne hidden Vars machen willst...

Greetz
alcaeus

Erster Abschnitt:

12.11. Prüfe importierte Parameter. Traue niemandem
http://www.php-faq.de/q/q-sicherheit-parameter.html

bigg 6. Mai 2005 18:48

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Zitat:

Prüfe importierte Parameter. Traue niemandem
die überschrift sagt doch alles darüber aus. :lol:

faux 9. Mai 2005 22:01

Re: [PHP] Verhindern, dass beim Start Code ausgeführt wird
 
Zitat:

Zitat von Waldteufel
Hi.

Oder so:

Code:
<?php
  if ($_POST['edttest']) {
    $user = $_POST['edttest'];
    echo "Hallo $user!";
  }
?>

<form method="post">
  <input type="text" name="edttest" />


  <input type="submit" name="btnsend" value="senden" />


</form>
@Wuaegner : Nimm doch bitte [ code ] statt [ quote ]

besser wäre es mit
Code:
if (defined($_POST['edttest']))
Denn wenn edttest 0 wäre, würde sonst nix passieren..


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz