Christopher: Frage zu www.irgendwas.at/index.php?id=1

Grüß euch folgende frage!

Kenne mich zwar aus, das wenn ich
www.meineseite.at/index.php?id=1
eingebe. Nur jetzt wollte ich noch was wissen!

Wenn ich zb. 2 Tabellen habe (Members und Events) muss ich ja immer eine seite zur verbindungsaufbau herstellen:

www.meineseite.at/member.php?id=1   das währe zb. die members
www.meineseite.at/events.php?id=1   das währe zb. die events

kann ich auch nur eine verbindung aufbauen, der beider tabelle abfragen kann mit nur einer seite?

www.meineseite.at/index.php?member?id=1   das währe zb. die members
www.meineseite.at/index.php?events?id=1   das währe zb. die events

Bitte um Hilfe!

MFG WEBER CH

  1. Moin!

    Selbstverständlich kannst Du auch mehrere URL-Parameter angeben, z.B.
    www.meineseite.at/index.php?tab=member&id=1

    Serverseitig mußt Du sicherstellen, dass die Parameter entsprechend (Get-Methode) ausgelesen und verarbeitet werden.

    MfG
    Danny

    1. Danke!

      aber was gib i dann da ein:
      $dbanfrage = "SELECT * FROM * WHERE id = $_REQUEST[id]";
                                  |
                                  |
                                  |
                                  |
                                  |
                                  |
                                 \  /
                                  /
       und was gib i da ein? Da habe ich früher immer die tabellennamen eingegeben???

      MFG

      1. Bitte!

        Etwa so:

        if ( isset($_GET['tab']) && isset($_GET['id']) )
        {
          $tab = $_GET['tab'];
          $id = $_GET['id'];
          if ($tab == 'members' || $tab == 'events')
          {
            $dbanfrage = "SELECT * FROM $tab WHERE id = $id";
          }
        }

        1. Aha supi es funkt aber no net so ganz!

          schau mal auf : http://www.design-weber.at/test.php?tab=kontakt
          da siehst nix :-(

          Nun der quelltext: was mache ich da falsch=
          <html>

          <head>
          <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
          <meta name="ProgId" content="FrontPage.Editor.Document">
          <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
          <title>Inhalte ausgebeng</title>
          </head>

          <body>
          <?
          $host = "127.0.0.1";
          $user = "XXX";
          $password = "XXX";
          $dbname = "10865?10865";
          $dbverbindung = mysql_connect ($host, $user, $password);

          if ( isset($_GET['tab']) && isset($_GET['id']) )
          {
            $tab = $_GET['tab'];
            $id = $_GET['id'];
            if ($tab == 'kontakt' || $tab == 'mannschaft')
            {
              $dbanfrage = "SELECT * FROM $tab WHERE id = $id";
            }

          }

          mysql_close ($dbverbindung)
          ?>
          </body>

          </html>

          1. hi,

            lies mal bitte http://learn.to/cooldown

            gruss,
            wahsaga

            1. lies mal bitte http://learn.to/cooldown

              »»» wahsaga

              was bist den du für a lustiger?

              1. Hi,

                was bist den du für a lustiger?

                beherzige bitte seinen Rat, anstatt hier Nötigungen vom Stapel zu lassen. Lies auch die </faq/>, nicht zuletzt zum Thema Verlinkungen.

                Überhaupt solltest Du ein wenig mehr lesen, z.B. auch die Dokus zu PHP und MySQL, sowie die bekannte PHP-FAQ http://www.dclp-faq.de/. Du scheinst einfach nur wild irgendwelche Codes zusammen zu kopieren, ohne Dir die geringe und *zwingend* notwendige Mühe zu machen, sie zu verstehen.

                Cheatah

                --
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
                1. Lol stimmt leider zum teil!

                  Nun mein problem is diese!!
                  da kommt keine ausgabe, wenn ich diesen quelltext benutze wieso?
                  Fehlt da noch was???

                  <body>

                  <?
                  $host = "127.0.0.1";
                  $user = "XXXX";
                  $password = "XXXX";
                  $dbname = "test";
                  $dbverbindung = mysql_connect ($host, $user, $password);

                  if ( isset($_GET['tab']) && isset($_GET['id']) )
                  {
                    $tab = $_GET['tab'];
                    $id = $_GET['id'];
                    if ($tab == 'members' || $tab == 'events')
                    {
                      $dbanfrage = "SELECT * FROM $tab WHERE id = $id";
                    }
                  }

                  mysql_close ($dbverbindung)
                  ?>

                  </body>

                  1. Hallo,

                    da kommt keine ausgabe, wenn ich diesen quelltext benutze wieso?
                    <body>

                    <?
                    $host = "127.0.0.1";
                    $user = "XXXX";
                    $password = "XXXX";
                    $dbname = "test";
                    $dbverbindung = mysql_connect ($host, $user, $password);

                    if ( isset($_GET['tab']) && isset($_GET['id']) )
                    {
                      $tab = $_GET['tab'];
                      $id = $_GET['id'];
                      if ($tab == 'members' || $tab == 'events')
                      {
                        $dbanfrage = "SELECT * FROM $tab WHERE id = $id";
                      }
                    }

                    mysql_close ($dbverbindung)
                    ?>

                    </body>

                    Von welchem Teil dieses Codes erwartest Du denn, dass er eine Ausgabe erzeugt?

                    viele Grüße

                    Axel

                    1. da kommt keine ausgabe, wenn ich diesen quelltext benutze wieso?
                      <body>

                      <?
                      $host = "127.0.0.1";
                      $user = "XXXX";
                      $password = "XXXX";
                      $dbname = "test";
                      $dbverbindung = mysql_connect ($host, $user, $password);

                      if ( isset($_GET['tab']) && isset($_GET['id']) )
                      {
                        $tab = $_GET['tab'];
                        $id = $_GET['id'];
                        if ($tab == 'members' || $tab == 'events')
                        {
                          $dbanfrage = "SELECT * FROM $tab WHERE id = $id";
                        }
                      }

                      mysql_close ($dbverbindung)
                      ?>

                      </body>

                      von dem code??????

                      1. Hi,

                        von dem code??????

                        welcher _Teil_ des Codes sollte Deiner Ansicht nach eine Ausgabe erzeugen? Oder anders gesagt: Verstehe bitte erst einmal die Kommandos, die Du da verwendest.

                        Cheatah

                        --
                        X-Will-Answer-Email: No
                        X-Please-Search-Archive-First: Absolutely Yes
                        1. Hier wird keine ausgabe erzeugt! Nur ich will, dass eine ausgabe erzeugt wird, aber ich kenne micht nicht aus!

                          MFG WEBER CH

                          1. Dann google doch einfach nach "php help hilfe"
                            oder surfe direkt zu: http://www.php.net

                            Zu Deinem Script:

                            Ausgaben erzeugt man mit print oder echo, das alleine reicht hier aber nicht aus. Da fehlt noch einiges...

                            Der Zugriff auf die Tabellen ist durch eine if-Abfrage beschränkt, so dass böswillige User nicht durch Ändern der URL einfach andere Tabellen abfragen können...

                  2. hi,

                    if ($tab == 'members' || $tab == 'events')
                      {
                        $dbanfrage = "SELECT * FROM $tab WHERE id = $id";

                    bis hier hin hast du jetzt ein verbindung zur DB hergestellt, sowie deine query in einem string formuliert.

                    du hast sie aber noch nicht einmal zur ausführung an die DB übergeben, es gibt also zu diesem zeitpunkt noch überhaupt keine daten, die auszugeben sich lohnen würde.

                    gruss,
                    wahsaga