Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme beim Maskieren von Variablen!

Einklappen

Neue Werbung 2019

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

  • Gast-Avatar
    Ein Gast erstellte das Thema Probleme beim Maskieren von Variablen!.

    Probleme beim Maskieren von Variablen!

    Hallo,
    bei folgendem Skript taucht folgendes Problem auf. Wenn ich im SQL-String die Variablen eingabeA und eingabeB mit $ eingebe innerhalb des SQL-Strings, dann werden die anscheinend nicht an die Datenbank übermittelt (da keine Daten im result zurückkommen). Trage ich anstatt $eingabeA/B feste Strings innerhalb des SQL-Strings ein, dann klappt Datenbank anbindung! Aber mit den Variablen nicht.

    Code:
    ?php if ($submit) {
    
        $verbindung=@MYSQL_CONNECT("localhost","root","");
    
        if($verbindung) {
        @mysql_select_db("verwaltung");
    
       $sql = 'SELECT `name` '
            . ' FROM `benutzer` '
            . ' WHERE `benutzername` = "$eingabeA" AND `kennwort` = "$eingabeB" LIMIT 0, 30';
    	
        $result = @MYSQL_QUERY($sql) or die ("Falsche Select-Anweisung!");
    	$data = @MYSQL_RESULT($result,0);
    
    	
    	echo mysql_error();
    	
    	echo "Hallo $data, sie sind eingeloggt!
    ";
    	echo "$eingabeA und $eingabeB
    ";
    	echo "<hr>";
    
    	echo mysql_error();
    
        mysql_close($verbindung);
    	
    	   } else {
        echo "Keine Verbindung zur Datenbank!
    "; }
    }
    
    ?>

    Folgender Code ist obigen Skript vorgelagert.


    Code:
    <form method="post" action="<?php echo $PHP_SELF; ?>">
    <table border="1" cellpadding="0" cellspacing="4" align="center">
     <tr>
      <td align="right">Benutzername:</td>
      <td><input name="eingabeA" type="text" size="10" maxlength="10"></tr><tr>
      <td align="right">Password:</td>
      <td><input name="eingabeB" type="password" size="10" maxlength="10"></td></tr>
    </table>
    </p>
    <table border="0" cellpadding="0" cellspacing="4" align="center">
    <input type="reset" value="Abbrechen">
    <input type="submit" " name="submit" value="Benutzerdaten&uuml;berpr&uuml;fen"
    </table>
    </p>
    </form>
    [/b]

    Wie tarne ich jetzt die variablen?

  • Gast-Avatar
    Ein Gast antwortete
    naja, kann ja mal passieren

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    AAAAAAAAAAAAAAAAAAAAAAAAAaaaaaaaa

    Hilfe, ich bin vielleicht blöde! Hatte oben die Variablennamen abgeändert.

    Dieses Code funktioniert jetzt!
    Code:
    $sql = "SELECT `name` FROM `benutzer` WHERE `benutzername` = '" .$eingabeA. "' AND `kennwort` = '" .$eingabeB. "' LIMIT 0, 30";

    Sorry Leute, das ich euch so genervt hab. Blöde Sache! Aber trotzdem vielen Dank für die schnelle Hilfe!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    kann es sein,dass deine variablen einfach leer sind?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von Ben
    das kann man auch wunderbar mit den code-tags schreiben
    ja ich weiß, da könnte man noch so einiges anders schreiben, aber ich war gerade faul und ich wollte nicht noch extra formatieren usw... das kann er selber machen.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    nungut!

    Ich hab es mal versucht und folgendes ist dabei rausgekommen:


    Code:
    //$sql = "SELECT name FROM benutzer WHERE benutzername = '".$eingabeA."' AND kennwort = '".$eingabeB."' LIMIT 0, 30";
    Das funktionert leider nicht! Bekomme als Ergebnis immer noch nix von der Datenbank, anscheinend sind wieder beide Variablen ohne Inhalt.
    Aber ich versuche es jetzt mal anders!

    Code:
    $sql = "SELECT `name`  FROM `benutzer`  WHERE `benutzername` = 'Dennis' AND `kennwort` = 'root' LIMIT 0, 30";
    Diese Abfrage funktioniert!Also Feste Strings kann ich schonmal maskieren damit. Aber wie die Variablen???

    PS: Erstmal danke für die schnelle Reaktion!

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    Zitat von cgdesign
    $sql = "SELECT name FROM benutzer WHERE benutzername = '".$eingabeA."' AND kennwort = '".$eingabeB."' LIMIT 0, 30";
    das kann man auch wunderbar mit den code-tags schreiben

    Code:
    $sql = "SELECT 
                    name 
                FROM 
                    benutzer 
                WHERE 
                    benutzername = '" . $eingabeA . "' 
                AND 
                    kennwort = '" . $eingabeB . "' 
                LIMIT 0, 30";
    du musst den verkettungsoperator " . " also den punkt verwenden.

    grüße ben

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    $sql = "SELECT name FROM benutzer WHERE benutzername = '".$eingabeA."' AND kennwort = '".$eingabeB."' LIMIT 0, 30";

    Einen Kommentar schreiben:

Lädt...
X