1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

PHP Abhängigvariblen

Discussion in 'Web-Know-how für die Homepage' started by Thomas Heß, Oct 30, 2009.

Thread Status:
Not open for further replies.
  1. Thomas Heß

    Thomas Heß Kbyte

    Hallo zusammen,
    ich möchte mein Script weiter ausbauen und zwei Variblen voneinander abhängig machen. Siehe [​IMG]

    Und zwar soll der Besucher der kein Abendessen auswählt, auch nicht dazu aufgefordert werden, die Personenanzahl anzugeben.

    Bin selbst Laie was PHP Programmierung angeht. Hat jemand eine Idee wie man das hinbekommen kann?

    PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
      <head>
            <title>Ablauf Organisation - Hallenmasters Turnier</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        </head>
        <body>
            <font face="MS Sans Serif" size="1">&nbsp;</font><font face="MS Sans Serif" color="#008000" size="1"><u><b>Willkommen
                    beim Organisatorischen Ablauf des Hallenmasters Turnier 2010 des SV
                    Nollingen 1949 e.V.</b></u></font>

        <p align="justify"><font face="MS Sans Serif" size="1">Herzlich Willkommen
            zum organisatorischen Teil des Hallenmasters 10. Um Ihnen einen
            reibungslosen Ablauf zu gewähren, möchten wir vorab ein paar Details zu
            ihrer Teilnahme am Hallenmasters Turnier 2010 wissen. Diese Umfassen
            insbesondere die Verpflegung und die Anzahl der Teilnehmer. Für unsere
            Teilnehmer bieten wir nach dem jeweiligen Turnierende ein Abendessen an. Das
            Abendessen kann optional für die komplette Mannschaft zu einem Preis von 40
            EUR hinzugebucht werden.</font></p>


            <p><b><font face="MS Sans Serif" size="1">Online-Buchung</font></b><font face="MS Sans Serif" size="1">
                    </font>    </p>
        <ul>
            <li><font face="MS Sans Serif" size="1">Organisatorischer Ablauf: HM10</font></li>
        </ul></p>
                    <font face="MS Sans Serif" size="1">
    <?php
      $vorname 
    $_POST['vorname'];
      
    $name $_POST['name'];
      
    $strasse $_POST['strasse'];
      
    $plz $_POST['plz'];
      
    $ort $_POST['ort'];
      
    $telefon $_POST['telefon'];
      
    $verein $_POST['verein'];
      
    $alter0 $_POST['alter0'];
      
    $email $_POST['email'];
      
    $startgebuehr $_POST['startgebuehr'];
      
    $abendessen $_POST['abendessen'];
      
    $personen $_POST['personen'];
      
    $veg $_POST['veg'];
      
    $ip .= $_SERVER['REMOTE_ADDR'];
      
    $empfaenger "***************";
      
    $betreff "Ablauf Hallenmasters 2010";
      
    $extra "From: $email \n";
      
    $extra .= "Content-Type: text/html\n";
      
    $mitteilung "$vorname $name hat den Organisatoischen Ablauf zum HM10 ausgefüllt:<br />

                    - - - - - - <br />
                      <strong>Daten:</strong> <br />
                    
    $vorname $name <br />
                    
    $strasse <br />
                    
    $plz $ort <br />
                    Mail: 
    $email <br />
                    Telefon: 
    $telefon <br />
                    Vereinsname: 
    $verein <br />
                    Alterklasse: 
    $alter0 <br />
                    IP-Adresse: 
    $ip<br /><br />
                    - - - - - - <br />
                    <strong>Weiteres:</strong> <br />
                    Startgebühr: 
    $startgebuehr <br />
                    Abendessen: 
    $abendessen <br />
                                    Personen: 
    $personen <br />
                                    davon Vegetarier: 
    $veg";
      
    $muster "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$";

      if(isset(
    $_POST['ueberpruefung']))
      {
      
    $allesok 1;

      if(empty(
    $_POST['vorname'])){
      
    $allesok 0;
      
    $error['vorname'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie Ihre Vornamen an!</font><br />";}

      if(empty(
    $_POST['name'])){
      
    $allesok 0;
      
    $error['name'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie Ihren Namen an!</font><br />";}

      if(empty(
    $_POST['strasse'])){
      
    $allesok 0;
      
    $error['strasse'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie den Strassennamen an!</font><br />";}

      if(empty(
    $_POST['plz'])){
      
    $allesok 0;
      
    $error['plz'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie die Postleitzahl an!</font><br />";}

              elseif (!
    preg_match ("/^[0-9]{5}$/",$plz)){
              
    $allesok 0;
              
    $error['plzfalsch'] = "<font color=red face=MS Sans Serif size=2>Bitte überprüfen Sie die Postleitzahl!</font><br />";}

      if(empty(
    $_POST['ort'])){
      
    $allesok 0;
      
    $error['ort'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie den Wohnort an!</font><br />";}

      if(empty(
    $_POST['telefon'])){
      
    $allesok 0;
      
    $error['telefon'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie Ihre Telefonnummer an!</font><br />";}

              elseif (!
    ctype_digit($telefon)) {
              
    $allesok 0;
              
    $error['telefonfalsch'] = "<font color=red face=MS Sans Serif size=2>Bitte überprüfen Sie Ihre Telefonnummer</font><br />";}

      if(empty(
    $_POST['verein'])){
      
    $allesok 0;
      
    $error['verein'] = "<font color=red face=MS Sans Serif size=2>Wie lautet der Name Ihres Vereins?</font><br />";}

       if(empty(
    $_POST['alter0'])){
      
    $allesok 0;
      
    $error['alter0'] = "<font color=red face=MS Sans Serif size=2>Welche Junioren betreuen Sie?</font><br />";}

        if(empty(
    $_POST['email'])){
      
    $allesok 0;
      
    $error['email'] = "<font color=red face=MS Sans Serif size=2>Bitte geben Sie Ihre E-Mail Adresse an!</font><br />";}

              elseif(!
    ereg($muster$_POST['email'])){
              
    $allesok 0;
              
    $error['emailfalsch'] = "<font color=red face=MS Sans Serif size=2>Bitte überprüfen Sie Ihre E-Mail-Adresse!</font><br />";}

      if(
    $_POST['startgebuehr'] == 'Auswahl'){
      
    $allesok 0;
      
    $error['startgebuehr'] = "<font color=red face=MS Sans Serif size=2>Bitte wählen Sie eine Startgebühr aus!</font><br />";}

      if(
    $_POST['abendessen'] == 'Auswahl'){
      
    $allesok 0;
      
    $error['abendessen'] = "<font color=red face=MS Sans Serif size=2>Möchten Sie kein Abendessen?</font><br />";}

      if(
    $_POST['personen'] == 'Auswahl'){
      
    $allesok 0;
      
    $error['personen'] = "<font color=red face=MS Sans Serif size=2>Bitte wählen Sie die Anzahl der teilnehmenden Personen.</font><br />";}

      if(
    $_POST['datenschutz'] !== 'ja'){
      
    $allesok 0;
      
    $error['datenschutz'] = "<font color=red face=MS Sans Serif size=2>Bitte lesen und akzeptieren Sie den Datenschutz!</font><br />";}

      }

      if(
    $allesok){

      
    mail ($empfaenger$betreff$mitteilung$extra);

      echo 
    '<font color=green><p>Ihre Daten wurde erfolgreich übermittelt. Vielen Dank.<br>
    Sie erhalten eine E-Mail mit den von Ihnen angegebenen Daten. Bitte beachten Sie diese Hinweise</p>'
    ;
      }

      else
      {
      
    ?>
      </font>
      <table border="0" width="70%"><form id="bestellformular" method="post" action="abwicklung.php">
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Vorname:</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['vorname']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="vorname" size="30" maxlength="25" value="<?php echo $_POST['vorname']; ?>"></font></td>
      </tr>
      <tr>

        <td width="29%" height="22"><font face="MS Sans Serif" size="1">Name:</font></td>
        <td width="41%" height="22">
            <font face="MS Sans Serif" size="1" color="#000000">
              <?php echo $error['name']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="name" size="30" maxlength="25" value="<?php echo $_POST['name']; ?>"></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Strasse:</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['strasse']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="strasse" size="30" maxlength="25" value="<?php echo $_POST['strasse']; ?>"></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">PLZ + Wohnort:</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['plz']; ?><?php echo $error['plzfalsch']; ?> <?php echo $error['ort']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="plz" size="5" maxlength="5" value="<?php echo $_POST['plz']; ?>">
          </font><font face="MS Sans Serif" size="3" color="#000000">
          <font size="1" face="MS Sans Serif">
          <input type="text" name="ort" size="20" maxlength="30" value="<?php echo $_POST['ort']; ?>"></font><font face="MS Sans Serif" size="1" color="#000000">
        </font>
        </font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Telefon:</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['telefon']; ?><?php echo $error['telefonfalsch']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="telefon" size="30" maxlength="25" value="<?php echo $_POST['telefon']; ?>"></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Vereinsname</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['verein']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="verein" size="30" maxlength="30" value="<?php echo $_POST['verein']; ?>"></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Junioren</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['alter0']; ?><input type="text" name="alter0" size="30" maxlength="30" value="<?php echo $_POST['alter0']; ?>"></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Ihre E-Mail Adresse</font></td>
        <td width="41%"><font face="MS Sans Serif" size="1" color="#000000">
          <?php echo $error['email']; ?><?php echo $error['emailfalsch']; ?></font><font size="1" face="MS Sans Serif" color="#000000"><input type="text" name="email" size="30" maxlength="30" value="<?php echo $_POST['email']; ?>"></font></td>
      </tr>
      <tr>
        <td colspan="2"><font face="MS Sans Serif" size="1">&nbsp;</font></td>
      </tr>
       <tr>
        <td colspan="2"><font face="MS Sans Serif" size="1">&nbsp;</font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Startgebühr Auswahl:</font></td>
        <td width="41%"><font size="1" face="MS Sans Serif"><?php echo $error['startgebuehr']; ?><select name="startgebuehr">
                    <option value="Auswahl">Bitte auswählen</option>
                            <option <?php if($startgebuehr=='AB_Junioren'){echo "selected=\"selected\"";} ?> value="AB_Junioren">
                    40 EUR Startgebühr (A-/B-Junioren)</option>
                      <option <?php if($startgebuehr=='DE_Junioren'){echo "selected=\"selected\"";} ?> value="DE_Junioren">
                    30 EUR Startgebühr (D-/E-Junioren)</option>
                  </select></font></td>
      </tr>
            <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Ich möchte für meine
            Mannschaft ein Abendessen</font></td>
        <td width="41%"><font size="1" face="MS Sans Serif"><?php echo $error['abendessen']; ?><select name="abendessen">
                    <option value="Auswahl">Bitte auswählen</option>
            <option <?php if($abendessen==ja){echo "selected=\"selected\"";} ?> value="ja">
                    Ja, Abendessen (40 EUR)</option>
            <option <?php if($abendessen==nein){echo "selected=\"selected\"";} ?> value="nein">
                    Nein, kein Abendessen</option>
                  </select></font></td>
      </tr>
      <tr>
        <td width="70%" colspan="2">
            <font face="MS Sans Serif" size="1" color="#008000">Das
            Abendessen kann erst nach Turnierende bezogen werden! Im
            Abendessen ist eine Mahlzeit und ein Getränk pro Person enthalten.
            Abendessen: Spaghetti Bolognese. Gilt nur in Verbindung mit Buchung eines
            kompletten Abendessen der Mannschaft.</font></td>
      </tr>
      <tr>
        <td width="70%" colspan="2">&nbsp;</td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Folgende Personenanzahl
            nimmt am Abendessen teil:</font></td>
        <td width="41%"><font size="1" face="MS Sans Serif"><?php echo $error['personen']; ?><select name="personen">
            <option value="Auswahl">Bitte auswählen</option>
                    <option <?php if($personen==1){echo "selected=\"selected\"";} ?> value="1">
                                    1</option>
           <option <?php if($personen==2){echo "selected=\"selected\"";} ?> value="2">
                                    2</option>
           <option <?php if($personen==3){echo "selected=\"selected\"";} ?> value="3">
                                    3</option>
           <option <?php if($personen==4){echo "selected=\"selected\"";} ?> value="4">
                                    4</option>
                                       <option <?php if($personen==5){echo "selected=\"selected\"";} ?> value="5">
                                    5</option>
                                       <option <?php if($personen==6){echo "selected=\"selected\"";} ?> value="6">
                                    6</option>
                                       <option <?php if($personen==7){echo "selected=\"selected\"";} ?> value="7">
                                    7</option>
                                       <option <?php if($personen==8){echo "selected=\"selected\"";} ?> value="8">
                                    8</option>
                                       <option <?php if($personen==9){echo "selected=\"selected\"";} ?> value="9">
                                    9</option>
                                     <option <?php if($personen==10){echo "selected=\"selected\"";} ?> value="10">
                                    10</option>
                                       <option <?php if($personen=='>10'){echo "selected=\"selected\"";} ?> value=">10">
                                    Mehr als 10</option>
                     </select></font></td>
      </tr>
      <tr>
        <td width="29%"><font face="MS Sans Serif" size="1">Anzahl davon
            vegatarische Esser...</font></td>
        <td width="41%"><font face="MS Sans Serif"><font size="1">
          <select name="veg">
            <option value="Auswahl">Bitte auswählen</option>
                    <option <?php if($veg==1){echo "selected=\"selected\"";} ?> value="1">
                                    1</option>
           <option <?php if($veg==2){echo "selected=\"selected\"";} ?> value="2">
                                    2</option>
           <option <?php if($veg==3){echo "selected=\"selected\"";} ?> value="3">
                                    3</option>
           <option <?php if($veg==4){echo "selected=\"selected\"";} ?> value="4">
                                    4</option>
                                       <option <?php if($veg==5){echo "selected=\"selected\"";} ?> value="Keine">
                                    Keine</option>
                                       <option <?php if($veg=='>5'){echo "selected=\"selected\"";} ?> value=">5">
                                    Mehr als 5</option>
          </select></font></font></td>
      </tr>
      <tr>
        <td width="29%"><a href="http://www.svnollingen.com/datenschutz.htm" target="blank">
            <font face="MS Sans Serif" size="1" color="#008000">Datenschutz</font></a><font size="1" face="MS Sans Serif">-Anerkennung</font></td>
        <td width="41%"><font size="1" face="MS Sans Serif"><?php echo $error['datenschutz']; ?><input type="checkbox" name="datenschutz" value="ja">JA</font></td>
      </tr>
      <tr>
        <td colspan="2"><font face="MS Sans Serif" size="1">&nbsp;</font></td>
      </tr>
      <tr>
      <td colspan="2" align="center"><font size="1" face="MS Sans Serif"><input type="hidden" name="ueberpruefung" value="1">
            </font><font size="1" face="MS Sans Serif"> <input name="senden" type="submit" id="senden" value="senden" /></font></td>
      </tr>
    </form></table>
                    <font face="MS Sans Serif" size="1">
    <?php
    }
    ?>
            </font>
            <p><font face="MS Sans Serif" size="1"><b>Die Daten werden verschlüsselt
                    via SSL übertragen!<br> Aus Sicherheitsgründen wird Ihre IP-Adresse
                    gespeichert! </b></font></p>
            <p><font face="MS Sans Serif" size="1">Dieses Formular wurde mit freundlicher Unterstützung von MLsysteme realisiert!</font></p>
            <font face="MS Sans Serif" size="1">
    <a href="http://www.wieistmeineip.de/cometo/?de"><img src="http://www.wieistmeineip.de/ip-adresse/?size=468x60" border="0" width="468" height="60" alt="IP" /></a>
        </font>
                            <p>&nbsp;</p>
        </body>
        </html>
    Danke schonmal für die Hilfe.

    Thomas
     
  2. salim_aliya

    salim_aliya Halbes Megabyte

    Hallo,

    das ist mit PHP so nicht machbar, weil PHP eine statische Sprache ist.

    Hier wäre die Lösung JavaScript.

    Du musst zu jedes einzelne Objekt im select "abendessen" ein value zuweisen. Als nächstes musst du dem select ein "onchange" parameter geben, dass dann eine Javascript funktion aufruft. Wenn z.B. das value von Abendessen gleich 0 ist, dann lässt du die Schaltflächen mit der Personenanzahl mit visible=false verschwinden.

    www.selfhtml.org wird dir sicher eine große hilfe sein.

    Wenn du ein Beispiel wünscht, schreib uns einfach hier an.
     
  3. Thomas Heß

    Thomas Heß Kbyte

    Ich bräuchte da auf jedenfall ein Beispiel ich versteh nämlich nur Bahnhof.
     
  4. salim_aliya

    salim_aliya Halbes Megabyte

    Hallo,

    zuerst: Sorry, dass es lange gedauert hat, ich geb zu ich war ein wenig faul :D

    Hier habe ich ein kleines Beispiel Script vorbereitet f&#252;r dich. Ohne jeden weiteren Schnick Schnack denke ich, wird es leicht sein f&#252;r dich, nachzuvollziehen, was hier passiert:

    Code:
    <html>
    <head>
    <title>Beispiel Formular</title>
    </head>
    
    <body>
    <script type="text/javascript">
    
    function appear(control_a, control_b)
    {
    	var control_a = document.getElementById(control_a);
    	var control_b = document.getElementById(control_b);
    
    	if(control_b.value == "0")
    	{
    		control_a.style.visibility = "hidden";
    	}
    	else 
    	{
    		control_a.style.visibility = "visible";
    	}
    }
    
    </script>
    
    <select id="abendessen" onchange="appear('personen', 'abendessen');" size="1">
    <option value="0">Nein, ohne Abendessen</option>
    <option value="1" selected>Ja, mit Abendessen</option>
    </select>
    
    <p>
    <select id="personen" size="1">
    <option value="0">F&#252;r 10 Personen</option>
    <option value="1">F&#252;r 20 Personen</option>
    </select>
    </body>
    </html>
    
    Kopiere diesen Code in eine HTML Datei und probiere ihn aus. Ich denke, das war es, was du gesucht hast, oder? :D

    Nun liegt es an dir, diesen Code in deines zu integrieren.

    Falls du erkl&#228;rt haben willst, was genau in dem Code passiert, melde dich nochmal :D
     
    Last edited: Nov 1, 2009
Thread Status:
Not open for further replies.

Share This Page