php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben || php-forumjetzt anmelden
 

PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 30-04-2022, 12:43
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard PHP Script und Formular in einer Datei

Habe ein Formular (html Datei) und einen PHP Script (PHP-Datei)



kann man das in EINER Datei machen, ich möchte damit folgendes erreichen


1. Das eingegebene im Formularfeld auswerten, ob es den bestimmten Inhakt hat (z.B. 4-stellige Zahl, oder erste Stelle der Eingabe ist ein "?"
2. wenn das Eingegebene nicht korrekt ist, dann soll das Formular angezeigt bleiben
3. wenn die Eingabe richtig ist, dann soll der PHP Teil in der Datei ausgeführt werden


Kann mir da bitte jemand helfen
Mit Zitat antworten
  #2 (permalink)  
Alt 30-04-2022, 13:25
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

Habe es mal versucht, aber es geht leider nicht.
Wenn ich das Formular absende, kommt des echo nicht und es wird wieder das Formular angezeigt.


Das Formular soll nur angezeigt bleiben, wenn das Eingegebene nicht korrekt ist (hab ich noch keine Abfrage gemacht)


Und wenn alles stimmt, dann soll das Echo (oder der ganze PHP-Code ausgeführt werden


<div>
PHP-Code:
<?php    
    
//Formulareingabe prüfen 
    
if ($_POST[submit] && $_POST[check] == "1") {
      
//Das was passieren soll, wenn das Formular abgeschickt wurde ### 
   
      
echo 'Formular abgesendet';
   
    } 
// if Ende
   
  
?>
   
  <!DOCTYPE html>
  <html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Suche</title>
    <link rel="stylesheet" href="layout.css">
  </head>
  <body>
      <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="codeingabe">
        <input type="text" id="code" name="code" autofocus><br><br>
        <input type="submit" name="btnG" value="Suche">
        <input type="hidden" value="1" name="check">
        </form>
  </body>
  </html>
Mit Zitat antworten
  #3 (permalink)  
Alt 30-04-2022, 13:29
KRaFFiX
 Registrierter Benutzer
Links : Onlinestatus : KRaFFiX ist offline
Registriert seit: Apr 2014
Beiträge: 3
KRaFFiX befindet sich auf einem aufstrebenden Ast
Standard

Vergiss die Quotes nicht - dann brauchst du auf Check gar nicht mehr überprüfen.

PHP-Code:
<?php    
    
//Formulareingabe prüfen 
    
if ($_POST['submit']) {
      
//Das was passieren soll, wenn das Formular abgeschickt wurde ### 
   
      
echo 'Formular abgesendet';
   
    } 
// if Ende
   
  
?>
   
  <!DOCTYPE html>
  <html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Suche</title>
    <link rel="stylesheet" href="layout.css">
  </head>
  <body>
      <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="codeingabe">
        <input type="text" id="code" name="code" autofocus><br><br>
        <input type="submit" name="submit" value="Suche">
        <input type="hidden" value="1" name="check">
        </form>
  </body>
  </html>
Achtung: der Submit-Button muss auch genauso heißen.
Mit Zitat antworten
  #4 (permalink)  
Alt 30-04-2022, 13:34
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

  1. Das Prinzip nennt sich Affenformular
  2. Array Indizes werden mit Quotes angegeben, sonst sind es Konstanten
  3. PHP_SELF solltest Du besser nicht verwenden
  4. Soll das Formular nach der Verareitung erneut angezeigt werden? Wenn nicht,benötigst Du ein exit. Evtl. zusammen mit einer header Umleitung
Mit Zitat antworten
  #5 (permalink)  
Alt 30-04-2022, 13:34
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

Es geht leider nicht. Egal ob ich da was eingeben in das Formularfeld oder nicht. Beim Absenden bleibt immer das Formular stehen und das ECHO wird nicht ausgeführt
Mit Zitat antworten
  #6 (permalink)  
Alt 30-04-2022, 13:37
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Lass Dir als erstes mal ein var_dump($_POST) ausgeben, dann siehst Du, was im POST Kanal drin steckt.
Beim ersten Aufruf führt das zu einem Warning, das ist normal, wichtig ist, dass Du nach dem Absenden etwas drin stehen hast.
Mit Zitat antworten
  #7 (permalink)  
Alt 30-04-2022, 13:40
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ArneDrews Beitrag anzeigen
  1. Das Prinzip nennt sich Affenformular
  2. Array Indizes werden mit Quotes angegeben, sonst sind es Konstanten
  3. PHP_SELF solltest Du besser nicht verwenden
  4. Soll das Formular nach der Verareitung erneut angezeigt werden? Wenn nicht,benötigst Du ein exit. Evtl. zusammen mit einer header Umleitung

Das Formular soll nur immer dann weiter angezeigt werden, wenn die Eingabe nicht stimmt (es soll z.B. immer eine 4-stellige, oder 8 stellige Zahl da rein und das mal mit "?" beginnend oder nur die Zahl:
z.B. 1234 oder 12345678 oder ?1234 oder ?12345678


wenn die Eingabe richtig ist, dann soll mein PHP-Code ausgeführt werden (im Beispiel hab ich nur ein ECHO) der richtige PHP-Code springt dann zu einer anderen Website mittels



echo '<meta http-equiv="refresh" content="1; url=' . htmlspecialchars($url, ENT_COMPAT, 'UTF-8') . '">';
Mit Zitat antworten
  #8 (permalink)  
Alt 30-04-2022, 13:44
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Den Sprung zu einer anderen Website kannst Du auch mit header() machen, dazu brauchst Du keinen HTML Tag. Bei dem Meta-Tag werden ja Informationen an den Browser gesendet, das benötigst Du ja nicht.
PHP-Code:
header('location: https://www.example.com');
exit; 
Etwas zweck entfremdet, aber besser, wie das HTML Meta-Tag.
Mit Zitat antworten
  #9 (permalink)  
Alt 30-04-2022, 13:52
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

ich habe es derzeit alles in 2 Dateien und das funzt ja auch soweit gut.


  • Habe ber noch keine Abfrage des INPUT Feldes auf die Eingaberichtigkeit
  • wollte das in EINE Datei haben
also dass nur beim Absenden (und wenn die Eingabe einer Vorgabe entspricht)
--> mein PHP-Script abgearbeitet wird (der alleine geht wunderbar)
dabei dann das Formular nicht wieder angezeigt wird.


Und wenn die Eingabe nicht nach einer Vorgabe ist, soll das Formular weiter angezeigt werden mit evtl. einem Hinweis "Eingabe falsch oä."
Mit Zitat antworten
  #10 (permalink)  
Alt 30-04-2022, 13:55
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Ja... und was ist mit #6 und #8?
Probiert, ignoriert oder nicht verstanden?

Wenn der Codeblock nicht ausgeführt wird, scheint die Bedingung der IF-Klause falsch zu sein, bzw. false zu ergeben. => #6

Ob in zwei oder einer Datei, eine direkte Umleitung über den Browser macht keinen Sinn => #8

Code, der funktioniert, ist nicht immer automatisch eine gute Lösung.
Mit Zitat antworten
  #11 (permalink)  
Alt 30-04-2022, 14:03
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

#6

array(3) { ["code"]=> string(4) "1234" ["submit"]=> string(5) "Suche" ["check"]=> string(1) "1" }


Die Post-Eingabe funktioniert ja


#8
weiß nicht wie ich das machen muss.
Ich habe derzeit diese Weiterleitung zur Googlesuche mit dem im PHP errechnetem Wert der an die Googlesuche angehangen ist .
Das geht alles wunderbar


Sorry, bin leider blutiger Anfänger und möchte nun eben nur noch, dass ich die Eingabe des Wertes im Formular "kontrolliere" auf Richtigkeit.


Das Beispiel aus #3 geht, habe da den namen erst falsch gehabt.
Mit Zitat antworten
  #12 (permalink)  
Alt 30-04-2022, 18:26
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Das submit ist im dump von $_POST ja ersichtlich, von daher sollte das auch funktionieren. Aber der Value ist "Suche" vom Typ string. Du benötigst aber einen bool:
PHP-Code:
if (isset($_POST['submit']))
{
 echo 
'Formular abgesendet';

Mit Zitat antworten
  #13 (permalink)  
Alt 30-04-2022, 18:39
BH8
 Registrierter Benutzer
Links : Onlinestatus : BH8 ist offline
Registriert seit: Feb 2013
Beiträge: 30
BH8 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ArneDrews Beitrag anzeigen
Das submit ist im dump von $_POST ja ersichtlich, von daher sollte das auch funktionieren. Aber der Value ist "Suche" vom Typ string. Du benötigst aber einen bool:
PHP-Code:
if (isset($_POST['submit']))
{
 echo 
'Formular abgesendet';


danke, es lag am "name" der erst nicht "submit" war :-)


es funktioniert jetzt alles supi
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Script] PHP Mailto Formular mit MC Datei Versand mixxter Apps und PHP Script Gesuche 5 20-02-2006 15:35
mehrseitiges formular in einer datei subabrain BRAINSTORMING PHP/SQL/HTML/JS/CSS 5 03-10-2005 19:24
Formular für Ausgabe in einer .txt Datei? xpnet PHP Developer Forum 11 15-03-2004 16:20
formular und update-anweisung in einer Datei / $PHP_SELF karibikjoe SQL / Datenbanken 4 13-05-2003 13:15
Datei von einer Datei/einem Formular in einen Array einer anderen Datei schreiben Nezao PHP Developer Forum 1 06-05-2003 20:46

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Warum Texterstellung mit künstlicher Intelligenz richtig gut ist
Warum Texterstellung mit künstlicher Intelligenz richtig gut istKünstliche Intelligenz ist dabei, die Welt zu erobern. Die größten Unternehmen entwickeln Systeme, die einen Text für Sie schreiben können. Und sie machen das sehr gut.

05.01.2022 | Berni

Vorteile eines flexiblen ERP Systems
Vorteile eines flexiblen ERP SystemsEin flexibles ERP System bietet in allen Unternehmensbereichen die Grundlage für eine erfolgreiche Verwaltung, Organisation und Planung aller Prozesse.

01.12.2021 | Berni


 

Aktuelle PHP Scripte

Homepagetools 2022

Kostenloses Gästebuch und Homepagetools für die eigene Homepage. Bei GuxDu kann man sich kostenlos die Websitetools auf die vorhandene Website einbauen. Zudem kann man bei GuxDU auch eine eigene Homepage mit 3D Effekten erstellen. GuxDu ist kostenlos.

29.04.2022 freepler | Kategorie: PHP/ Gaestebuch
SF-Shopsystem V1.0

Hier haben wir ein einzigartiges Shopsystem in PHP. Die Anzahl der Artikel ist unbegrenzt, einfach zu bedienen und erklärt sich. Ausführliche Beschreibung weiter unten.

28.04.2022 Speedcrawler | Kategorie: PHP/ Shops
Anzeigen Markt mit PayPal Bezahl System

Anzeigen Markt Script mit PayPal Bezahl System Der Benutzer hat die Möglichkeit sofort nach Bezahlung mit PayPal seine Anzeigen zu schalten, je nach seinem Guthaben.

27.04.2022 Webace_de | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:30 Uhr.