1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Datenbank/Tabellenmanagement-Userverwaltung

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von newmacuser24, 08.02.08.

  1. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Hallo,
    hätte eine Frage zum Datenbank/Tabellenmanagement (MySQL). Wenn man eine unbestimmte Anzahl von Benutzern verwaltet, so stelle ich mir vor, ist es am besten, wenn man sie alle in eine Tabelle schreibt. Jetzt stellt sich mir die Frage, was man mit individuellen Einstellungen macht, die user in ihrem Profil machen können (z.B.: homepage angeben, etc...) Legt man da für jeden Benutzer eine eigene Tabelle an, oder wirft alles in eine Tabelle und filtert dann mit Suchkriterien, wenn man dem jeweiligen Benutzer sein Profil anzeigt? Hoffe, ich hab das einigermassen verständlich erklärt ;)

    Danke im Voraus!
     
  2. fealXX

    fealXX Granny Smith

    Dabei seit:
    05.02.08
    Beiträge:
    15
    eine tabelle user mit passwort und name und id
    und eine tabelle mit userid und den einstellungen
     
  3. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Um nicht einen neuen Thread öffnen zu müssen, dachte ich, ich poste es einfach mal hier...
    Wenn ich aus der Tabelle nun Daten auslese und in eine Menüliste schreibe, so wird die id ein wenig sonderbar ausgegeben.
    Die Tabelle besteht aus: id, Produktname, Eigenschaften, etc...

    Hier der Code, den ich verwende, um die Daten aus der MySQL-Datenbank zu holen und in die Liste reinzuladen:

    ...zunächst mal mit DB connecten, etc...

    PHP:

    <select name="items" id="items">
            <option value="#">Bitte wählen</option> 
            <?
             $sql="SELECT * FROM products_db WHERE Eigenschaften LIKE '$size' ORDER BY Produktname ASC";
         $result=mysql_query($sql);
        
            while($zeile = mysql_fetch_array($result)){
        ?>
                   <option value= <? echo $zeile['id']; ?>"><?php echo $zeile['Produktname'];
            
    ?></option>
                    <?
            }
            ?>
    Die id wird anstatt 1,2,3,4,5 mit 1/" oder 2/" oder 3/",etc... ausgegeben.
    In der Datenbank ist sie aber als INT angelegt.

    Was kann da bloß sein?

    Danke im Voraus!
     
  4. creative7even

    creative7even Jerseymac

    Dabei seit:
    23.02.05
    Beiträge:
    454
    hallo…
    könnte an einem fehlendem Hochkomma in dieser Zeile hier liegen:
    Code:
    <option value=[COLOR="Red"]"[/COLOR]<? echo $zeile['id']; ?>"><?php echo $zeile['Produktname'];
    
     
  5. fealXX

    fealXX Granny Smith

    Dabei seit:
    05.02.08
    Beiträge:
    15
    Code:
     <select name="items" id="items">
            <option value="#">Bitte wählen</option> 
            <?
             $sql=[COLOR=Red]'[/COLOR]SELECT * FROM products_db WHERE Eigenschaften LIKE [COLOR=Red]`'.addslashes([/COLOR]$size[COLOR=Red]).'`[/COLOR] ORDER BY Produktname ASC[COLOR=Red]'[/COLOR];
         $result=mysql_query($sql);
     
            while($zeile = mysql_fetch_array($result)){[LEFT][COLOR=Red]echo'[/COLOR]<option value=[COLOR=Red]"'.[/COLOR]$zeile['id'][COLOR=Red].'[/COLOR]">[COLOR=Red]'.[/COLOR]$zeile['Produktname'][COLOR=Red].'[/COLOR]</option>[COLOR=Red]';[/COLOR]
    [/LEFT]
             }
            ?>
    erzähl ma obs so geht
    ansonsten hab ich noch ne andere idee
     
  6. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Vielen Dank! Hab die Lösung von creative7even ausprobiert und hat sofort geklappt. War das fehlende Hochkomma. Da schätzt man dann wieder die Programmiersprachen, die eine SYNTAX ERROR ausgeben ;)
     
  7. creative7even

    creative7even Jerseymac

    Dabei seit:
    23.02.05
    Beiträge:
    454
    Sei froh dass keine Syntax-Error ausgeworfen werden. Da würden man beim Surfen durchs www einen Schreikrampf bekommen. Für validen HTML-Code gibt es den Validator: http://validator.w3.org/. Der würde bspw. auch fehlende Hochkomma finden.

    Und noch was:
    Die SQL-Statements benötigen noch etwas Aufmerksamkeit (SQL-Injection):
    Code:
    $query = sprintf("select * from products_db where Eigenschaften like '%s' order by Produktname ASC", mysql_real_escape_string($size));
    $result = mysql_query($query);
    
    such mal nach "mysql_real_escape_string" im php-Manual.

    lg.c7
     
  8. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Oh, danke...werd ich mich gleich mal schlau machen...
     

Diese Seite empfehlen