MySQL - unterschied und aufbau $_post

oezer

Erfahrenes Mitglied
[gelöst] MySQL - unterschied und aufbau $_post

Hi,

wusste jetzt nicht ob das eher in mysql oder php forum reingehört, bei zweifel einfach verscheiben, danke.

hab mal eine Frage, hab mir gestern ein buch von Michael Rüttgers - MySQL Dummies zugelegt, hab aber bemerkt das die Beispiele die ich mache da drin nicht funktionieren, weil daheim auf meinem System läuft die aktuelle XAMPP von Apache Friends.

Nun meine eigentliche Frage. Ich habe gesehen das mittlerweile standardmässig register_globals = off bei den meisten providern stehen. Wie rufe ich das in meinem Skript auf, damit die Formulardaten auch richtig aufgerufen werden?

Führe ich mein script aus, passiert gar nix.. keine fehlermeldung nix.. ich hab mal die select befehle direkt in phpmyadmin ausprobiert, da funktionieren sie, also denke ich mir das es was mit dem formular selbst zutun hat.

hier mal der code.
PHP:
<?php
include("db_connect1.inc");

  if(!isset($set))
    {
    echo "<form action=\"$PHP_SELF\" method=\"post\">\n";
    echo "<input type=\"hidden\" name=\"set\" value=\"TRUE\">\n";
    echo "<b>Suche nach:</b>\n";
    echo "<select size=\"1\" name=\"spalte\">\n";
    echo "<option value=\"m_id\">MitgliedsNr</option>\n";
    echo "<option value=\"vorname\">Vorname</option>\n";
    echo "<option value=\"name\">Name</option>\n";
    echo "<option value=\"strasse\">Strasse</option>\n";
    echo "<option value=\"plz\">PLZ</option>\n";
    echo "<option value=\"ort\">Ort</option>\n";
    echo "<option value=\"telefon\">Telefon</option>\n";
    echo "<option value=\"mobile\">Mobil</option>\n";
	echo "<option value=\"email\">EMail</option>\n";
    echo "</select>\n";
    echo "<b>Suchbegriff:</b>\n";
    echo "<input type=\"text\" name=\"suche\" size=\"40\" maxlenght=\"255\"><p>\n";
    echo "<input type=\"submit\" value=\"Suche starten...\">\n";
    }
  else
    {
    if($suche == "")
      $sql = "SELECT * FROM adresse;";
    else
      $sql = "SELECT * FROM adresse WHERE " . $spalte . " LIKE '" . $suche . "%';";


/* If schleife zu ende, jetzt kommt ein neues */

    if(@mysql_connect($host, $user, $pwd))
      {
      if(@mysql_select_db($dbname))
        {
        $erg = @mysql_query($sql);
        if($erg)
          {
          if(mysql_num_rows($erg) <= 0)
            {
            echo "Leider konnte kein Datensatz in der Kategorie<br><b>"
                 . strtoupper($spalte) . "</b> mit dem Suchbegriff <b>"
                 . strtoupper($suche) . "</b> gefunden werden!<p>\n";
            unset($set);
            echo "<a href=\"$PHP_SELF\">Zur&uuml;ck zum Formular</a>\n";
            }
          else
            {
            echo "<table border=\"1\">\n";
            echo "<tr>\n";
            for($i=0; $i<mysql_num_fields($erg); $i++)
              {
              $feld = mysql_field_name($erg, $i);
              echo "<th>". ucfirst($feld) . "</th>\n";
              }
            echo "</tr>\n";
            while($row = mysql_fetch_row($erg))
              {
              echo "<tr>\n";
              for($i=0; $i<mysql_num_fields($erg); $i++)
                echo "<td>" . $row[$i] . "</td>";
              echo "</tr>\n";
              }
            echo "</table><p>\n";
            unset($set);
            echo "<a href=\"$PHP_SELF\">Zur&uuml;ck zum Formular</a>\n";
            }
          }
        else
          echo "<br><i>Es konnten keine Datensätze gefunden werden.</i><br>\n";
        }
      else
        echo "<br><i>Verbindung zur Datenbank ist im Moment nicht m&ouml;glich!</i><br>\n";
      mysql_close();
      }
    else
      echo "<br><i>Der Server ist wegen Wartungsarbeiten vor&uuml;bergehend nicht erreichbar.</i><br>\n";
    }

?>

Also was müsste ich genau eingeben damit dieses Formular funktioniert, ich weiss das es irgendetwas mit den register_globals zutun hat, leider steige ich als Anfänger da nicht richtig durch.

Zweite Frage wäre, beim:
PHP:
echo "<option value=\"m_id\">MitgliedsNr</option>\n";
    echo "<option value=\"vorname\">Vorname</option>\n";
    echo "<option value=\"name\">Name</option>\n";
    echo "<option value=\"strasse\">Strasse</option>\n";
    echo "<option value=\"plz\">PLZ</option>\n";
wäre es möglich das ich statt die tabellennamen auch 1,2,3,4 etc. eingeben um mir die arbeit zu ersparen, würde das auch gehen?

und wenn ich schon mal euch ein bischen nerve mit meinen anfänger fragen, gibt es den für nen Anfänger eine schöne Anleitung wo ich alles über formulare erfahre, wie ich damit hauptsächlich daten in die mysql reinkriege, auslese und sie wieder darstelle in form von textareas, radiobutton, checkboxen etc. mit suchfunktionen und filtern und so.

vielleicht hat ja jemand voneuch ein tip, ja die FAQ habe ich mir angeschaut..
Grüsse
Oezer

also falls es jemanden interessiert:
PHP:
statt $spalte, $suche, $set einfach $_POST['spalte'], $_POST['suche'] und $_POST['set'] angeben..

..
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück