kostenloser Webspace werbefrei: lima-city


Groß/Kleinschreibung umgehen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    aff3m1tw4ff3

    aff3m1tw4ff3 hat kostenlosen Webspace.

    So ich hab auch mal wieder ein Problem. Ich rufe aus 2 verschiedenen DB-Tabellen einen Namen ab und Prüfe ob beide gleich sind, hierbei unterscheidet MySQL noch in Groß und Kleinschreibung.

    Ich möchte die Namen nun gerne ohne Rücksicht auf die Groß und Kleinschreibung Prüfen. Ich habe das jetzt mit
    strtolower()
    probiert, natürlich wiedermal Erfolglos.


    //-------------------------------------------------------------------
    // Prüfen ob IP hinterlegt ist und GangID stimmt ///////////////////
    //-------------------------------------------------------------------
    $check = mysql_query("SELECT * FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid'") or die (mysql_error());
    // Namen in Varible speichern
    $werte=mysql_fetch_row(mysql_query("SELECT kw_name FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid' "));
    $name_wertetabelle=$werte[0];
    $name_smal = strtolower($name_wertetabelle);
    
    
     //-------------------------------------------------------------------
    // Prüfen ob Rechte vergeben wurden ///////////////////
    //-------------------------------------------------------------------
    $name_valitabelle=mysql_fetch_row(mysql_query("SELECT name FROM kw_veri WHERE gangid='$gid' AND name='$name_wertetabelle'"));
    $name_vali=$name_valitabelle[0];
    $name_vali_smal = strtolower($name_vali);
    
    if ($name_vali_smal == $name_smal)
    {
    }
    else
    {
    sendimagetext ("Stopp mal !!\n\nDir fehlen die Rechte, um diese Liste sehen zu koennen.\nBitte wende dich an Euren Admin um die fehlenden Rechte        \nzu bekommen.");
    
    }


    Ist
    strtolower()
    nun der falsche Ansatz oder mache ich was falsch?
    Ich möchte nicht das die Namen beim eintragen in der DB schon in Groß oder Kleinbuchstaben umgewandelt werden, darum der Ansatz bei der Ausgabe.

    LG und Danke für die Hilfe :)
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. yo mey!
    wenn man deinen code so ansieht ... !?
    du schreibst
    Prüfen ob IP hinterlegt ist und GangID stimmt
    und anschließend steht dann
    $check = mysql_query("SELECT * FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid'") or die (mysql_error());
    // Namen in Varible speichern
    $werte=mysql_fetch_row(mysql_query("SELECT kw_name FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid' "));
    $name_wertetabelle=$werte[0];
    $name_smal = strtolower($name_wertetabelle);
    ???? [*kopfzerbrechen*]

    poste bitte den ganzen code, dazu noch die creates von den tabellen '$stadt' und kw_veri.

    weil? das ist hier kein rätzelraten, da versucht man zu helfen (oder auch nicht ;)
  4. Autor dieses Themas

    aff3m1tw4ff3

    aff3m1tw4ff3 hat kostenlosen Webspace.

    Ich habe wohl unten zuviel weg gelassen um der ersten "Beschreibung" einen Sinn zu geben. Es folgt noch die Prüfung durch
    if(mysql_num_rows($check ) >= 1){
    .

    Was ich jetzt nicht ganz verstehe ist der Zusammenhang mit dem tabellen, die Werte werden ja ausgelesen.

    Ich möchte nun durch
    $name_smal = strtolower($name_wertetabelle);
    und
    $name_vali_smal = strtolower($name_vali);
    erreichen das die Namen alle Kleingeschrieben verglichen werden. Das wird dann in dieser Prüfung benötigt
    $name_vali_smal == $name_smal


    //-------------------------------------------------------------------
    // Prüfen ob IP hinterlegt ist und GangID stimmt ///////////////////
    //-------------------------------------------------------------------
    $check = mysql_query("SELECT * FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid'") or die (mysql_error());
    // Namen in Varible speichern
    $werte=mysql_fetch_row(mysql_query("SELECT kw_name FROM $stadt WHERE ip='$ip' AND kw_gangid='$gid' "));
    $name_wertetabelle=$werte[0];
    $name_smal = strtolower($name_wertetabelle);
     
     
     //-------------------------------------------------------------------
    // Prüfen ob Rechte vergeben wurden ///////////////////
    //-------------------------------------------------------------------
    $name_valitabelle=mysql_fetch_row(mysql_query("SELECT name FROM kw_veri WHERE gangid='$gid' AND name='$name_wertetabelle'"));
    $name_vali=$name_valitabelle[0];
    $name_vali_smal = strtolower($name_vali);
     
    if ($name_vali_smal == $name_smal)
    {
    }
    else
    {
    sendimagetext ("Stopp mal !!\n\nDir fehlen die Rechte, um diese Liste sehen zu koennen.\nBitte wende dich an Euren Admin um die fehlenden Rechte        \nzu bekommen.");
     
    }
    if(mysql_num_rows($check ) >= 1){
    
    //ne ganze menge anderer Code
    }


    Table Create Stadt:

    CREATE TABLE `pennereck_de`.`koeln` (
    `kw_name` varchar( 20 ) NOT NULL DEFAULT '',
    `kw_wert` double( 10, 2 ) DEFAULT NULL ,
    `kw_att` int( 20 ) DEFAULT NULL ,
    `kw_def` int( 20 ) DEFAULT NULL ,
    `kw_gangid` varchar( 10 ) DEFAULT NULL ,
    `kw_stadt` varchar( 50 ) DEFAULT NULL ,
    `date` varchar( 80 ) DEFAULT NULL ,


    Table Create veri:

    CREATE TABLE `pennereck_de`.`kw_veri_koeln_kopie` (
    `id` int( 11 ) NOT NULL AUTO_INCREMENT ,
    `Name` varchar( 20 ) CHARACTER SET utf8 NOT NULL ,
    `gangid` int( 7 ) NOT NULL ,
    `stadt` varchar( 10 ) CHARACTER SET utf8 NOT NULL ,
    `datum` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,
    `ip` varchar( 20 ) CHARACTER SET utf8 NOT NULL ,
    PRIMARY KEY ( `Name` ) ,


    So ich hoffe mal das es so besser ist.
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    aff3m1tw4ff3 schrieb:
    Ist
    strtolower()
    nun der falsche Ansatz oder mache ich was falsch?
    In PHP gibt es eine Funktion die genau das macht was du suchst, case insensitiv vergleichen: strcasecmp(). Sie funktioniert genau so wie die gleichnamige C-Funktion…
  6. Autor dieses Themas

    aff3m1tw4ff3

    aff3m1tw4ff3 hat kostenlosen Webspace.

    hackyourlife schrieb:
    In PHP gibt es eine Funktion die genau das macht was du suchst, case insensitiv vergleichen: strcasecmp(). Sie funktioniert genau so wie die gleichnamige C-Funktion?


    Wie immer tiefster Dank für die Hilfe, läuft damit so wie gewünscht.
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!