PHP: Variable in einer MySQL Abfrage

  1. Dark Mania

    Dark Mania Thread StarterMacUser Mitglied

    Mitglied seit:
    18.02.2006
    Beiträge:
    155
    Zustimmungen:
    0
    Tach

    Code:
      $request = "SELECT * FROM Datenbank WHERE genre like '$categ' ORDER BY name LIMIT $entry, 25";
      $result = mysql_query($request);
    Mit diesem Code funzt das Script nicht. Wenn ich jedoch die Variable $categ durch "xp" (ohne ") ersetze, dann funzt es. Die Variable wird folgendermaßen übergeben

    Code:
      $categ = $HTTP_GET_VARS["categ"];
    und ja, in der URL steht

    Hoffe, mir kann jemand helfen. Danke.
     
    Dark Mania, 30.05.2006
  2. mac-o-rama

    mac-o-ramaMacUser Mitglied

    Mitglied seit:
    29.01.2006
    Beiträge:
    48
    Zustimmungen:
    0
    Hi,

    Du hast leider nicht geschrieben, welche PHP Version Du verwendest, aber versuche es mal mit

    Code:
     $categ = $_GET["categ"]; 
     
    mac-o-rama, 30.05.2006
  3. ApfelRalf

    ApfelRalfMacUser Mitglied

    Mitglied seit:
    14.01.2004
    Beiträge:
    642
    Zustimmungen:
    22
    Juten Morschen!

    Wie sieht denn $request aus, wenn du dir mal mit "echo $request" dein SQL-String ausgeben lässt? Ist $categ überhaupt gefüllt?

    Ich benutze immer diese Syntax:

    $paramter = $_REQUEST["parameter"];

    LG R
     
    ApfelRalf, 31.05.2006
  4. scope

    scopeMacUser Mitglied

    Mitglied seit:
    24.01.2005
    Beiträge:
    4.085
    Zustimmungen:
    301
    Wenn du es in einen MySQL-Query einbaust, umbedingt vorher den String prüfen, um SQL-Insertion (hieß es so) zu verhindern.

    PHP:
    $parameter mysql_escape_string$_REQUEST['parameter'] );
     
    scope, 31.05.2006
  5. Pinacolada

    PinacoladaMacUser Mitglied

    Mitglied seit:
    26.04.2005
    Beiträge:
    419
    Zustimmungen:
    41

    besser mit mysql_real_escape_string() :)
     
    Pinacolada, 31.05.2006
  6. moses_78

    moses_78MacUser Mitglied

    Mitglied seit:
    08.04.2005
    Beiträge:
    1.264
    Zustimmungen:
    22
    @Scope: "SQL-Injection" :)

    </ot>
     
    moses_78, 31.05.2006
  7. scope

    scopeMacUser Mitglied

    Mitglied seit:
    24.01.2005
    Beiträge:
    4.085
    Zustimmungen:
    301
    Insertion klingt auch ein bisschen arg dämlich.. besten Dank :)
     
    scope, 31.05.2006
  8. Dark Mania

    Dark Mania Thread StarterMacUser Mitglied

    Mitglied seit:
    18.02.2006
    Beiträge:
    155
    Zustimmungen:
    0
    Die Variable wird gefüllt, soviel ist sicher
     
    Dark Mania, 31.05.2006
  9. wegus

    wegusMacUser Mitglied

    Mitglied seit:
    13.09.2004
    Beiträge:
    14.982
    Zustimmungen:
    1.545

    was sich ja durch einen einfachen print();beweisen ließe! In jedem Fall ist Dein Zugriff auf POST/GET-Variablen ab PHP4 veraltet und funktioniert nur noch bei wenigen Servern (register_globals=on). Korrekt wäre ein Zugriff via $_POST[] oder $_GET[]-Array!
     
    wegus, 31.05.2006
Die Seite wird geladen...
Ähnliche Themen - PHP Variable einer
  1. flohaase
    Antworten:
    2
    Aufrufe:
    967
    flohaase
    26.09.2013
  2. knooby
    Antworten:
    4
    Aufrufe:
    3.700
  3. oconner
    Antworten:
    1
    Aufrufe:
    593
  4. BendAR
    Antworten:
    1
    Aufrufe:
    456
  5. Bl4ckSh33p
    Antworten:
    6
    Aufrufe:
    1.544