URL: https://www.overclockers.at/coding-stuff/solved_php_upper_function_83537/page_1 - zur Vollversion wechseln!
Sgott,
also, ich versuche nun schon seit geraumer Zeit folgendes Problem zu lösen, krieg's aber nicht hin.
Ich habe eine Eingabemaske, in der unter anderem ein Name und eine Stundenanzahl eingegeben wird. Diese werden dann mit den anderen Daten bei einem Klick auf Speichern in eine mysql Datenbank gepfeffert. Gut.
Nun muß ich aber eine Gesamtstundenanzahl berechnen und zwar für jeden einzelnen Namen, der eingegeben wurde. Hierbei muß ich aber berücksichtigen, daß die Leute einmal Hans, dann hans oder HaNs schreiben. Dazu kann ich doch den eingegebenen String einfach mittels der Funktion upper() in Grossbuchstaben umwandeln, oder? Nur haut des leider bei mir nicht hin.
Hier mal das, was ich geschrieben habe:
if ($zeile[name] == UPPER("Christoph")){
$stunden_christoph += $zeile[anzstd];
}
Aber des geht leider net. Irgendwelche Ideen?
du musst den namen aus dem queryresult mit upper in großbuchstaben umwandeln und dann mit z.b. CHRISTOPH vergleichen
oder du lässt das die datenbank für dich erledigen =)
der trick is das du beides in grossbuchstaben verwandelst fuer den vergleich 
Also so sollte das funktionieren?
if (UPPER($zeile[name]) == "HERLIND"){
$stunden_herlind += $zeile[anzstd];
}
Tut es aber nicht. 
UNd wie könnte ich das die Datenbank für mich erledigen lassen? Auf die Idee bin ihc noch gar nicht gekommen.
naja, du kannst z.b. case-unsensitive nach einem namen selecten und dann die summe errechnen lassen
edit: afair ist der LIKE operator caseunsensitive
mysql string functions: http://www.mysql.com/doc/en/String_functions.html
string comparsion: http://www.mysql.com/doc/en/String_..._functions.html
case sensitivity: http://www.mysql.com/doc/en/Case_Se..._Operators.html
mit aggregat-funktionen kannst du vermutlich das komplette aufsummieren die db erledigen lassen:
select upper(name),sum(anzstunden) from table group by upper(name);
//edit: mysql aggregatfunktionen: http://www.mysql.com/doc/en/GROUP-BY-Functions.html
//edit2: braucht man immer wieder zum nachschlagen -> added to tutorial-thread.
Cool, so hat's funktioniert! Vielen Dank für die Links! 
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026