Variablen aus der Url in querys verarbeiten

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

  • Variablen aus der Url in querys verarbeiten

    hab mal wieder ne Frage:

    folgendes Problem:

    ich gelang über eine url, z.B test/test.php?x=test
    auf test.php

    ich kann mir zwar x mittels echo"$x"; ausgeben lassen,
    aber leider kann ichs nich in sql queries hernehmen
    zB
    PHP-Code:
    mysql_query("DELETE FROM tab WHERE x='$x'"); 
    wie bekomm ich das zum laufen?

  • #2
    PHP-Code:
    mysql_query('DELETE FROM tab WHERE x="'.$_GET['x'].'"'); 
    Obwohl man sagen muss das diese Variante nicht sonderlich sicher ist.
    Da kann ja jeder dranhängen was er will.

    Kommentar


    • #3
      nich sonderlich tragisch weil das skript passwort geschützt is

      dankeschön

      Kommentar


      • #4
        hmmm irhendwie mag er mir das immernoch nicht löschen =/
        der spotname wird ja auch richtig ausgegeben und wenn ich den ecntsprechenden anstatt der variable unten ins query hau, dann funktionierts auch Oo

        hier is mal n Ausschnitt:
        PHP-Code:
              <td valign="middle"><form name="form1" method="post" action="showadmin.php">
                <p>
                      <label>
                      <input type="radio" name="acceptor" value="1">
          yes</label>
                      <br>
                      <label>
                      <input type="radio" name="acceptor" value="0">
          no</label>
                      <br><br>
                      <input name="change" type="submit" id="change" value="&Uuml;bernehmen">
                      <br><? switch($accept){
                                  case 1: echo"Wird akzeptiert."; break;
                                case 0: echo"Wird noch nicht akzeptiert!"; break;}
                                   ?>
                      <br>
                      <br>
                      L&ouml;schen? 
                      <input type="checkbox" name="del" value="yes">
                      <input name="delete" type="submit" id="delete" value="L&ouml;schen!">
                </p>
            <? 
            if($_POST['delete']){
                mysql_query("DELETE FROM spot WHERE spotname=' 
        ".$_GET["spotname"]." ' ");}?>
        </form>      </td>
            </tr>
            <tr>
              <td>Bild:</td>
              <td><? echo"<a href='".$bild."'><img src='".$bild."' 

        height='75%' width='75%' border='0'></a>";  ?></td> 
            </tr>
          </table>
        </div>
        </body>
        </html>

        Kommentar


        • #5
          Fehler gefunden:

          es lag am

          PHP-Code:
          if($_POST['delete']) 
          es muss nämlich komischerweiste

          PHP-Code:
          if($_POST['delete']='Löschen'
          obwohl ichs bei anderen skripts auch nach variante 1 gemacht hab...
          sehr komisch =/

          Kommentar


          • #6
            Original geschrieben von BugBite
            es muss nämlich komischerweiste
            PHP-Code:
            if($_POST['delete']='Löschen'
            Du meinst ==, sonst ist's immer true.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              ja is mir auch grad aufgefallen...
              aber wenn ich nu den == operator hernehm klappts garnichtmehr -.-
              wenn ich phpinfo() mach seh ich ja, dass $_POST['delete'] = Löschen! ist.

              aber mit der if Abfrage klappts einfach nich -.-

              Kommentar


              • #8
                hmm womöglich weil meine $_GET weg sind...

                Kommentar


                • #9
                  Sorry, aber das ist doch alles Kraut und Rüben!

                  Das Formular sendest du an showadmin.php und zwar per POST! Wenn der Server den Rquest nicht umschreibt - und davon gehe ich nicht aus - ist $_GET komplett leer. Das heißt, es wird alles gelöscht, wo spotname = '' ist ... wenn es überhaupt dazu kommt mit deinem if ...

                  Kommentar


                  • #10
                    hehe danke aber ich habs zu meiner verteidigung schon vor deinem post bemerkt

                    tja sowas kommt hald beim autodidacten learning y donig raus

                    Kommentar


                    • #11
                      Er löscht praktischerweise schon beim Formularaufbau.........

                      Kommentar

                      Lädt...
                      X