Prüfen ob Spalte in der Tabelle existiert

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Prüfen ob Spalte in der Tabelle existiert

    Hi,
    ich habe ein Script programmiert, mit dem der Administrator meiner Seite die Benutzerdaten einzelner Benutzer ändern kann. Dazu muss er nur die ID des jeweiligen Benutzers eingeben. Nur wenn ich jetzt z.B. die ID 100 eingebe (welche nicht vorhanden ist) zeigt der Script das Änderungsformular (halt ohne Benutzerdaten). Jetrzt würde ich gerne wissen, gibt es eine Funktion oder eine Möglichkeit herauszufinden ob eine ID in der Tabelle existiert.

    Also praktisch sowas wie

    PHP Code:
    if (!exist($id)) {
    die (
    "Diese ID existiert nicht");

    Danke

    Micronax

  • #2
    Also du könntest nach erfolgreichem Absetzen der Query die mysql_num_rows Abfragen und wenn die = 0 ist, dann soll er das Formular nicht anzeigen oder ein Hinweis ausgeben.
    PHP Code:
    $SQL "SELECT * FROM tabelle WHERE ID = '100'";
    $result mysql_query($SQL);
    if ( 
    mysql_num_rows($result) > )
    {
      
    // ...

    Comment


    • #3
      das kannst du doch schon beim auslesen testen ....

      wenn du
      Code:
      SELECT blah FROM tab WHERE id = 100
      schreibst, kannst du mit mysql_num_rows() rausfinden, wie viele datensätze zurückgekommen sind.

      mit == 1 weisst du, dass alles ok ist.
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Comment


      • #4
        ich habs jetzt so gelöst:

        PHP Code:
        if ( mysql_num_rows($result) == )
        {
        die (
        "Dieser Benutzer existiert nicht");

        Comment


        • #5
          ich habs jetzt so gelöst:

          PHP Code:
          if ( mysql_num_rows($result) == )
          {
          die (
          "Dieser Benutzer existiert nicht");

          Micronax

          Comment


          • #6
            ich empfehle dir hier auf ungleich 1 zu prüfen.

            wenn du mal bockmist mit der db-tabelle baust, und id=100 mehrfach vorkommt ... was machst du dann?
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Comment


            • #7
              hm.. da die tabele auf auto_increment steht.. sollte das eiegndlich nicht passieren.. Und wenn doch dann ist es ja nur der Adminbereich =)

              Und noch was: Weis jemand wie man den direkten Zufriff auf eine Datei unterbindet?

              Comment


              • #8
                readfile() anwenden und die datei in ein geschütztes verzeichnis legen. mehr dazu hier
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Comment


                • #9
                  Hab nix gefunden, was mir direkt helfen könnte.

                  Hab dass Probiert:

                  PHP Code:
                  if ($_SERVER['PHP_SELF'] == __FILE__)
                    die(
                  'so nicht'); 
                  Klappt aber nicht..
                  Micronax
                  Last edited by ; 12-03-2006, 11:09.

                  Comment

                  Working...
                  X