• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Datenbank Eintrag bei ausgabe von Groß in Kleingeschrieben ändern.

Ich stelle eine Text zum Teil aus Wörtern zusammen die aus einer Datenbank kommen.
Doch diese Wörter beginnen mit einem Großbuchstaben.
Nun habe ich aktuell die Besonderheit das in diesem speziellen Fall das Wort aus der Datenbank klein geschrieben werden müsste.

Gibt es eine Möglichkeit einen Eintrag beim einfügen durch php aus mysql-Datenbank von beginnendem Großbuchstaben in Kleinbuchstaben zu ändern.

Eine Änderung in der Datenbank wäre sinnlos. Da es nur für diesen speziellen Fall wäre.
Ich habe strtolower gefunden doch so wie ich das verstehe wird dort aus allen Buchstaben ein kleinbuchstabe gemacht. Da die restlichen Buchstaben jedoch schon klein sind kommt es sicher zu einem Fehler.
Ich bräuchte vermutlich die Umkehrung von ucfirst(). Ich habe dazu jedoch unter php.de und php.net keinen Hinweis gefunden.
 
Spricht was dagegen, das ganze Wort mit sql in Kleinbuchstaben umzuwandeln? also statt
Code:
Select feld
ein
Code:
Select lower(feld)
?
 
Es scheint zumindest so das irgendwas falsch ist.

Code:
         $ergebnis = mysql_query("SELECT lower(Herkunft), Stellungbezeichnung FROM stellungen WHERE url ='" . mysql_real_escape_string($_GET['SQL']) . "' AND ( Veroeffentlicht_am IS NOT NULL)");
         $row = mysql_fetch_object($ergebnis);

gibt
Notice: Undefined property: stdClass::$Herkunft in
aus.
lasse ich das lower() weg ist alles richtig.
 
PHP:
$query = "SELECT 
             lower(`Herkunft`),  
             `Stellungbezeichnung` 
           FROM 
             `stellungen` 
           WHERE 
             `url` ='" . mysql_real_escape_string($_GET['SQL']) . "' 
            AND 
             (`Veroeffentlicht_am` IS NOT NULL)";
 
PHP:
$query = "SELECT 
             lower(`Herkunft`),  
             `Stellungbezeichnung` 
           FROM 
             `stellungen` 
           WHERE 
             `url` ='" . mysql_real_escape_string($_GET['SQL']) . "' 
            AND 
             (`Veroeffentlicht_am` IS NOT NULL)";

so steht es nun bei mir
Code:
$ergebnis = mysql_query("SELECT
             lower(`Herkunft`),
             `Stellungbezeichnung`
           FROM
             `stellungen`
           WHERE
             `url` ='" . mysql_real_escape_string($_GET['SQL']) . "'
            AND
             (`Veroeffentlicht_am` IS NOT NULL)");
         $row = mysql_fetch_object($ergebnis);

aber der Fehler ist der selbe.
Es scheint das die eingefügten ´ nichts geändert haben.
normalerweise benötigt man bei lower(Feld) doch auch keine ´
 
Durch die Verwendung von lower() gibst Du dem Ergebnis keinen Spaltennamen. Den Fehler den Du siehst bezieht sich auf deine PHP-Programmierung nach der Ausführung dieses Statements, die du uns nicht gezeigt hast. Korrigieren kannst Du das indem Du dem Ergebnis von lower() auch einen Spaltennamen gibst. Also:

PHP:
$query = "SELECT 
             lower(`Herkunft`) AS Herkunft,
             `Stellungbezeichnung` 
           FROM 
             `stellungen` 
           WHERE 
             `url` ='" . mysql_real_escape_string($_GET['SQL']) . "' 
            AND 
             (`Veroeffentlicht_am` IS NOT NULL)";
 
Zurück
Oben