tutorials.de Buch-Aktion 05/2012
Like Tree3Danke
  • 1 Beitrag von Raisch
  • 1 Beitrag von ComFreek
  • 1 Beitrag von Raisch
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
332
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    seomaniac seomaniac ist offline Mitglied
    Registriert seit
    Dec 2011
    Beiträge
    18
    Guten Abend liebe Comm,

    Ich stehe wiedermal vor einem übergabe Problem und zwar:

    habe eine .php die per $_POST(''); übergebenen Werte von verschiedenen Formularen
    bearbeiten soll.

    Jetzt zu dem eigentlichem Poblem welches mir Kopfschmerzen bereitet
    und ich leider an dieser Stelle ziemlich lang Geknabbert habe:

    in Form1 wird z.b.: "name" und "vorname"
    angegeben die per $_POST übermittelt werden,

    in dem anderen Form2 aber: "name", "vorname" und eine "nummer"

    wenn ich aber nun von Script1 weiterleite findet mein Script "nummer" nicht und es treten
    Fehler auf.

    Wie kann ich es nun Regeln dass, wenn "nummer" nicht im Form vorhanden ist,
    also nicht übermittelt wird
    PHP-Code:
    $nummer $_POST['nummer']; 
    mit
    PHP-Code:
     $nummer ''
    ersetzt bzw ein wert zugewiesen wird und wenn
    bei form2 dann etwas Übermittelt wird der Wert aus dem Feld zugewiesen wird?

    ...
    Dies hier Funktioniert leider nicht:
    PHP-Code:
    if ( !isset($_POST['nummer'])) { $nummer '';}; 
    Vielen lieben Dank und noch einen guten Rutsch ins neue Jahr
     

  2. #2
    Avatar von Lime
    Lime Lime ist gerade online frisch fruchtig
    Registriert seit
    Jul 2011
    Beiträge
    373
    Wenn du zwei Forms hast, musst du auch zwei Submit-Buttons haben. Jeder Button ist nur für SEIN Form verantwortlich.

    <form1>
    <zelle1>
    <zelle2>
    <submit1>
    </form1>

    <form2>
    <zelle1>
    <zelle2>
    <submit2>
    </form2>

    Das nur kurz zur Veranschaulichung. Du kannst, wenn du bei Form1 auf Submit klickst, nicht auf die Werte von Form2 zugreifen und umgekehrt.

    Gruß

    PS: Theoretisch müsste deine Lösung funktionieren, nur einen Strichpunkt braucht man am Ende einer if-Abfrage sicherlich nicht.
     

  3. #3
    Avatar von Raisch
    Raisch Raisch ist offline extraordinary bit
    Registriert seit
    Aug 2011
    Ort
    Berlin
    Beiträge
    333
    Hallo,

    versuch es mal so:
    PHP-Code:
    $nummer = isset( $_POST['nummer'] ) ? $_POST['nummer'] : ''
    Gruß und guten Rutsch.
    seomaniac bedankt sich. 

  4. #4
    Avatar von ComFreek
    ComFreek ComFreek ist gerade online [x] Let it be logic!
    tutorials.de Moderator
    Registriert seit
    Jun 2009
    Beiträge
    2.364
    Blog-Einträge
    4
    Hallo,

    die IF-Bedingung passt und müsste eigentlich funktionieren!

    wenn ich aber nun von Script1 weiterleite findet mein Script "nummer" nicht und es treten
    Fehler auf.
    Wohin weiterleiten?
    Allerdings so wie ich dich verstanden habe, hast du ein Skript für zwei Formulare.


    Wenn du den String $nummer mit 0 füllen willst (wie im Thread-Titel), wenn er nicht existiert, dann müsste es so heißen:
    PHP-Code:
    if ( !isset($_POST['nummer']) ) $nummer '0'
    Guten Rutsch
    seomaniac bedankt sich. 
    mfg ComFreek

    Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
    Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
    [PHP] Überprüfen, ob Website erreichbarSicherheit in PHP-Codes schaffenGoogle Chrome-Extension für tutorials.dejson_compress()

  5. #5
    seomaniac seomaniac ist offline Mitglied
    Registriert seit
    Dec 2011
    Beiträge
    18
    comfreak, ich habe etwas vergessen zu erwähnen:

    die beiden form werden vorher per dropdown ausgewählt und das eine unterscheidet sich minimal von dem anderen, die rechnung allerdings ist gleich

    so funktioniert es:
    PHP-Code:
    if ( !isset($_POST['nummer']) ) $fn '0';
    if ( isset(
    $_POST['nummer']) ) $fn $_POST['nummer'];
    echo 
    $nummer
    oder gibts es noch einen besseren weg?

    /e: was haben dann die geschweifen klammern zu bedeuten, ich hatte die funktion schon, hatte aber nicht funktioniert ->

    falsch:
    PHP-Code:
    if ( !isset($_POST['nummer'])) { $nummer '0';};
    if ( isset(
    $nummer )) { $i4 $_POST['nummer'];}; 
    nochmal ein dickes danke an euch beide
    Geändert von seomaniac (31.12.11 um 18:34 Uhr)
     

  6. #6
    Avatar von Lime
    Lime Lime ist gerade online frisch fruchtig
    Registriert seit
    Jul 2011
    Beiträge
    373
    PHP-Code:
    if(!isset($_POST['nummer']))
    {
         
    $fn "0";
    } else {
         
    $fn $_POST['nummer'];

     

  7. #7
    Avatar von Raisch
    Raisch Raisch ist offline extraordinary bit
    Registriert seit
    Aug 2011
    Ort
    Berlin
    Beiträge
    333
    Zitat Zitat von seomaniac Beitrag anzeigen
    comfreak, ich habe etwas vergessen zu erwähnen:

    die beiden form werden vorher per dropdown ausgewählt und das eine unterscheidet sich minimal von dem anderen, die rechnung allerdings ist gleich

    so funktioniert es:
    PHP-Code:
    if ( !isset($_POST['nummer']) ) $fn '0';
    if ( isset(
    $_POST['nummer']) ) $fn $_POST['nummer'];
    echo 
    $nummer
    oder gibts es noch einen besseren weg?

    /e: was haben dann die geschweifen klammern zu bedeuten, ich hatte die funktion schon, hatte aber nicht funktioniert ->

    falsch:
    PHP-Code:
    if ( !isset($_POST['nummer'])) { $nummer '0';};
    if ( isset(
    $nummer )) { $i4 $_POST['nummer'];}; 
    nochmal ein dickes danke an euch beide
    So wie ich es geschrieben habe, nur mit einer null im hinteren String:
    PHP-Code:
    $fn = isset( $_POST['nummer'] ) ? $_POST['nummer'] : '0'
    Gruß
    seomaniac bedankt sich. 

  8. #8
    Avatar von Lime
    Lime Lime ist gerade online frisch fruchtig
    Registriert seit
    Jul 2011
    Beiträge
    373
    Seomaniac, du hast einen Fehler in deinen If-Abfragen. Theoretisch sind die richtig, aber die Syntax ist falsch.

    PHP-Code:
    if ( !isset($_POST['nummer'])) { $nummer '0';}; 
    if ( isset(
    $nummer )) { $i4 $_POST['nummer'];}; 
    du darfst hinter den geschwungenen Klammern kein Semikolon (Strichpunkt) machen!
    €: Mir fällt gerade auf, du behandelst bei der 1. Abfrage den $_POST von nummer, und beim 2. die Variable nummer, die du kurz zuvor gesetzt hast, falls sie nicht da war. Also wird die 2. if-Abfrage immer ausgeführt... Absicht?

    PHP-Code:
    if ( !isset($_POST['nummer'])) { $nummer '0';}
    if ( isset(
    $nummer )) { $i4 $_POST['nummer'];} 
    Gruß, Lime

    PS: Wenn du zwei if-Abfragen hast, die genau entgegengesetzte Regeln abfragen, dann kannst du statt zwei if-Abfragen eine if-else-Abfrage machen, wie bereits oben geschrieben.
    Geändert von Lime (31.12.11 um 20:29 Uhr)
     

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 21.01.11, 22:02
  2. Antworten: 5
    Letzter Beitrag: 20.07.08, 11:08
  3. Antworten: 13
    Letzter Beitrag: 04.05.08, 09:00
  4. Antworten: 2
    Letzter Beitrag: 04.06.07, 20:34
  5. $_POST array wird nicht übergeben
    Von Roumeo im Forum PHP
    Antworten: 4
    Letzter Beitrag: 18.06.06, 00:24

Stichworte