goto in php?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • goto in php?

    Hallo zusammen

    Ich bin ziehmlich neu in php. Im schreiben meines Script wollte ich zu einem anderen, vergangenen Punkt im Script zurück springen; wie es bei Basic mit 'goto' möglich.

    Leider habe ich keinen entsrechenden Befehl für PHP gefunden.

    Könnt Ihr mir da weiterhelfen?

    Danke Rönee

  • #2
    Goto ist eigentlich in jeder Programmiersprache (incl. Basic) ein Sakrileg ... insbesondere weil's den Quellcode unübersichtlich macht ... aus diesem Grunde gibt es sowas in PHP erstmal gar nicht ...

    Im übrigen ist Goto ein Element aus den 2GL Sprachen ... heutzutage wird prozedural oder objektorientiert Entwickelt ... !
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      gibts nicht.

      funktionen, schleifen, ...
      direkte sprungbefehle entsprechen nicht mehr dem stand der technik und sollten vermieden werden
      Die Zeit hat ihre Kinder längst gefressen

      Kommentar


      • #4
        Wow, das nenne ich eine promte Antwort

        Danke Jungs.

        Funktionsschlaufen , ja dann suche ich einmal danach

        Kommentar


        • #5
          Noch ne kleine Ergänzung hierzu:

          "Die Qualität eines Programms ist umgekehrt proportional zur Anzahl der darin vorkommenden Goto-Befehle"

          In diesem Sinne - höre also auf die anderen und vermeide GOTO wo es nur geht!

          Kommentar


          • #6
            Original geschrieben von zzet
            Noch ne kleine Ergänzung hierzu:

            "Die Qualität eines Programms ist umgekehrt proportional zur Anzahl der darin vorkommenden Goto-Befehle"

            In diesem Sinne - höre also auf die anderen und vermeide GOTO wo es nur geht!
            Wenn man sowas unbedingt in der Art machen will dann setzt man halt z.B. Boolean Werte und fragt diese an den gewünschten Stellen ab......

            Aber goto ist im allg. sehr unübersichtlich und erinnert mich stark an GWBasic bzw. QBasic
            [color=blue]MfG Payne_of_Death[/color]

            [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
            [color=red]Merke:[/color]
            [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

            Murphy`s Importanst LAWS
            Jede Lösung bringt nur neue Probleme
            Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
            In jedem kleinen Problem steckt ein großes, das gern raus moechte.

            Kommentar


            • #7
              Original geschrieben von zzet
              In diesem Sinne - höre also auf die anderen und vermeide GOTO wo es nur geht!
              OffTopic:
              ... also ich für meinen Teil erinner mich gern an die gute alte Zeit zurück ... wo man GOTOs noch benutzen durfte, ohne, dass gleich alle dachten sie müssten dich belehren ...

              Wer in einer gemütlichen Stunde mal wieder von von der Zeit "als Programmierer noch richtige Programmierer waren" träumen möchte [>>]

              BTW: nein, ich benütze keine GOTOs mehr - diese neumodischen Sprachen unterstützen das ja leider nicht mehr...
              [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

              [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

              [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
              (from here)

              Kommentar


              • #8
                mich erinnert's an das schild in benders wohnung in futurama -
                Code:
                10 Home
                20 Sweet
                30 Goto 10
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

                  [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

                  [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
                  (from here)

                  Kommentar


                  • #10
                    Alles klar

                    Also Jungs vergesst das Goto ich habe es nun mit einer Function gemacht.
                    Obwohl ich meine, dass ich sicher keine prefekte Art dieser Funktion brauche, funktioniert das Scrip einwandfrei!

                    Hier könnt Ihr mein komplettes Script einmal einsehen.

                    Danke noch einmal für den Tipp.

                    PHP-Code:
                    <?
                    $abfrage01 = mysql_query ("SELECT * FROM $tab_navigation where name ='$seite'");
                    while ($row = mysql_fetch_array ($abfrage01)) 
                    {
                    $id_templ1 = $row["tmp"];
                    }
                    $abfrage02= mysql_query ("SELECT * FROM $tab_optionen where id_templ ='$id_templ1'");
                    while ($row = mysql_fetch_array ($abfrage02)) 
                    {
                    $mail_to = $row["mail"];

                    $formdaten = "$nachname,$tel,$mail,$anrede,$vorname,$strasse,$plz,$ort,$textfeld,$firma";
                    $strasse = $_POST['strasse'];
                    $anrede = $_POST['anrede'];
                    $firma = $_POST['firma'];
                    $vorname = $_POST['vorname'];
                    $nachname = $_POST['nachname'];

                    $ort = $_POST['ort'];
                    $plz = $_POST['plz'];
                    $mail = $_POST['mail'];
                    $textfeld = $_POST['textfeld'];
                    $tel = $_POST['tel'];

                    echo<<<ABC
                    <form action="$g_link$seite&type=send" name="Formkontakt" method="POST">
                    ABC;

                    function check($start,$formdaten)
                    {
                    $nachnamenteil = explode(",", $formdaten);
                    $nachname = $nachnamenteil[0];
                    $telteil = explode(",", $formdaten);
                    $tel = $telteil[1];
                    $mailteil = explode(",", $formdaten);
                    $mail = $mailteil[2];
                    $anredeteil = explode(",", $formdaten);
                    $anrede = $anredeteil[3];
                    $vornamenteil = explode(",", $formdaten);
                    $vorname = $vornamenteil[4];
                    $strasseteil = explode(",", $formdaten);
                    $strasse = $strasseteil[5];
                    $plzteil = explode(",", $formdaten);
                    $plz = $plzteil[6];
                    $ortteil = explode(",", $formdaten);
                    $ort = $ortteil[7];
                    $textfeldteil = explode(",", $formdaten);
                    $textfeld = $textfeldteil[8];
                    $firmateil = explode(",", $formdaten);
                    $firma = $firmateil[9];

                    echo <<<ABC

                    <table border="0" cellspacing="0" cellpadding="0">
                    <tr>
                    <td valign="top" ><img border="0" src="images/spacer.gif" width="3" height="5"></td>
                    </tr>
                      <tr>
                        <td ><font class="teaser">Kontaktformular</font></td>
                      </tr>
                    <tr>
                    <td valign="top" ><img border="0" src="images/spacer.gif" width="3" height="5"></td>
                    </tr>
                    ABC;
                    if ($start == "secend")
                    {
                    echo<<<ABC
                    <tr>
                        <td valign="top" class="content"><font color="#ff7777">
                    Bitte füllen Sie alle rot-markieren * Felder aus.</font></td>
                    </tr>
                    <tr>
                        <td valign="top" ><img border="0" src="images/spacer.gif" width="3" height="5"></td>
                    </tr>
                    ABC;
                    }
                    echo<<<ABC
                       <tr>
                        <td valign="top">

                        <table border="0" cellspacing="0" cellpadding="0">
                        <tr>
                            <td valign="middle" align="right"><font class="content_grau"> Anrede:&nbsp;</font></td>
                            <td valign="top"></td>
                            <td valign="middle">
                    ABC;
                    if ($anrede == "" and $start == "secend")
                    {
                    echo<<<ABC
                            <table cellspacing="0" cellpadding="0"  bordercolor="gray" style="border:1; border-style:solid; background-color:#ffd5d5" class="content">
                            <tr>
                                <td>
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                            <table cellspacing="0" cellpadding="0" border="0"  class="content">
                            <tr>
                                <td>
                    ABC;
                    }
                    echo<<<ABC
                    <table cellspacing="0" cellpadding="0" border="0"  class="content">
                    <tr>
                        <td>Firma</td>
                        <td>
                    ABC;
                    if ($anrede == "Firma")
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Firma" style="border:0" checked>
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Firma" style="border:0">
                    ABC;
                    }
                    echo<<<ABC
                        </td>
                        <td>&nbsp;&nbsp;Frau</td>
                        <td>
                    ABC;
                    if ($anrede == "Frau")
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Frau" style="border:0" checked>
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Frau" style="border:0">
                    ABC;
                    }
                    echo<<<ABC
                        </td>
                        <td>&nbsp;&nbsp;Herr</td>
                        <td>
                    ABC;
                    if ($anrede == "Herr")
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Herr" style="border:0" checked>
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                        <input type="radio" name="anrede" value="Herr" style="border:0">
                    ABC;
                    }
                    echo<<<ABC
                        </td>
                    </tr>
                    </table>
                    </td>
                    </tr>
                    </table>
                    </td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> Firma:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top"><input type="text" name="firma" value="$firma" style="width:199" >
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> Name* / Vorname:&nbsp;</font></td>
                    <td valign="top"><img border="0" src="images/spacer.gif" width="2" height="1"></td>
                    <td valign="top">
                    ABC;
                    if ($nachname == "" and $start != "first")
                    {
                    echo<<<ABC
                    <input type="text" name="nachname" value="$nachname" style="width:97; background-color:#ffd5d5" >
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                    <input type="text" name="nachname" value="$nachname" style="width:97"  >
                    ABC;
                    }
                    echo<<<ABC
                    <img border="0" src="images/spacer.gif" width="2" height="1"><input type="text" name="vorname" value="$vorname" style="width:97" ></td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> Strasse:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top"><input type="text" value="$strasse" name="strasse" style="width:199" ></td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> PLZ / Ort:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top"><input type="text" name="plz" value="$plz" style="width:57" ><img border="0" src="images/spacer.gif" width="2" height="1"><input type="text" name="ort" value="$ort" style="width:137"  size="21"></td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> Telefonnummer*:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top">
                    ABC;
                    if ($tel == "" and $start != "first")
                    {
                    echo<<<ABC
                    <input type="text" name="tel" value="$tel" style="width:199; background-color:#ffd5d5"  >
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                    <input type="text" name="tel" value="$tel" style="width:199"  >
                    ABC;
                    }
                    echo<<<ABC
                    </td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> E-Mail*:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top">
                    ABC;
                    if ($mail == "" and $start != "first")
                    {
                    echo<<<ABC
                    <input type="text" name="mail" value="$mail" style="width:199; background-color:#ffd5d5"  >
                    ABC;
                    }
                    else
                    {
                    echo<<<ABC
                    <input type="text" name="mail" value="$mail" style="width:199"  >
                    ABC;
                    }
                    echo<<<ABC
                    </td>
                    </tr>
                    <tr>
                    <td colspan="3" valign="top"><img border="0" src="images/spacer.gif" width="3" height="1"></td>
                    </tr>
                    <tr>
                    <td valign="top" align="right"><font class="content_grau"> Bemerkung:&nbsp;</font></td>
                    <td valign="top"></td>
                    <td valign="top"><textarea name="textfeld" rows="4" cols="10" style="width:200">$textfeld</textarea></td>
                    </tr>
                    <tr>
                    <td colspan="3" valign="top"><img border="0" src="images/spacer.gif" width="2" height="1"></td>
                    </tr>
                    <tr>
                    <td valign="top"><font class="tb_list">&nbsp;</font></td>
                    <td colspan="2" valign="top"><font class="content_grau"> <input type="submit" value="senden" class="button1"></font></td>
                    </tr>
                    </table>
                    </td>
                    </tr>
                    <tr>
                    <td valign="top" ><img border="0" src="images/spacer.gif" width="3" height="5"></td>
                    </tr>
                    </table>
                    </form>

                    ABC;

                    }
                    if(!isset($type))
                    {

                    check(first,$formdaten);
                    ABC;
                    }
                    $formdaten;
                    if ($type == "send")
                    {
                    if (($nachname == "") or ($tel == "") or ($mail == ""))
                        {
                        check(secend,$formdaten);
                        die;
                        }
                    $textfeld = nl2br($textfeld);
                    $nachricht="
                    <style type='text/css'>
                    body ,div,p,td
                    {
                    font-family : Arial;
                    font-size : 9pt;
                    }
                    </style>
                    Internetkontaktformular <br><br>
                    <table bgcolor='#d7f2ff' border='0' cellspacing='1' cellpadding='1'>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td >Anrede / Firma:</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff'>$anrede&nbsp;</td>
                        <td bgcolor='#f0faff'>$firma</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td >Name / Vorname:</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff'>$nachname&nbsp;</td>
                        <td bgcolor='#f0faff'>$vorname</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td>Strasse:</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff' colspan='2'>$strasse</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td>PLZ / Ort</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff'>$plz&nbsp;</td>
                        <td bgcolor='#f0faff'>$ort</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td>Telefon:</td>
                        <td >&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff' colspan='2'>$tel</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td>E-Mailadresse:</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff' colspan='2'>$mail</td>
                    </tr>
                    <tr>
                        <td bgcolor='#FFFFFF'></td>
                        <td>Memo:</td>
                        <td>&nbsp;&nbsp;&nbsp;</td>
                        <td bgcolor='#f0faff' colspan='2'>$textfeld</td>
                        </tr>

                    </table>
                    <br><br>";
                    $support_mail = "$mail_to";

                    $mail_header  = "From: Internet Kontaktformular <$mail> \r\n";
                    $mail_header .= "Content-Type: text/html\r\nContent-Transfer-Encoding: 8bit\r\n"; // Das ist der Mail-Header der regelt wie eine Mail verschickt wird.
                    $mail_header .= "X-Mailer: PHP ". phpversion();

                    $mail_betreff = "Internetkontakt";
                    $mail_body    = stripslashes(($nachricht));


                       $header .= "Content-Type: text/html\r\nContent-Transfer-Encoding: 8bit\r\n"; 
                       $res = mail ($support_mail, $mail_betreff, $mail_body, $mail_header);
                    If ($res)
                    echo <<<ABC
                    <table cellspacing="2" cellpadding="0">
                    <tr class="tbBg1">
                    </tr>
                    <tr><td colspan="2">

                    </td></tr>
                    <tr>
                    <td colspan="2" valign="top"></td>
                    </tr>
                    <tr>
                    <td colspan="2" valign="top">
                    <font class="content_grau">Ihre Nachricht wurde erfolgreich versandt.<br><br>Wir werden uns demnächst bei Ihnen melden.<br><br>DANKE </font>
                    </td>
                    </tr>
                    </table>
                    ABC;
                    }
                    }

                    ?>
                    Zuletzt geändert von rönee; 02.05.2005, 01:23.

                    Kommentar


                    • #11
                      Hier könnt Ihr mein komplettes Script einmal einsehen.
                      Ob man das will? Dein Code hat nur zur folge, dass ich weit nach rechts scrollen muss. sonst hat er für mich keinen effekt.

                      Kommentar

                      Lädt...
                      X