echo $begrüßung;
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
das script läuft mit apache 1.3 und php 4.3.4.Na siehst du. Damit kommen wir dem Ziel ein ganzes Stück näher. MySQL hat mit Version 4.1 auch an der Authentifizierung Änderungen vorgenommen. Das sieht man an dem längeren Passwort-Hash. Mit der Funktion PASSWORD() wird ein solches neues Password erzeugt. GRANT und CREATE USER verwenden auch das neue Verfahren. Die in deiner alten PHP-Version vorhandene MySQL-Client-API ist dafür zu alt. phpinfo() wird dir für diese API im Abschnitt mysql einen Wert kleiner als 4.1 anzeigen.
Lösungsvorschläge:
- Nimm eine neue PHP-Version. 4.3.4 ist jenseits von gut und böse. (OK, willst du ja sowieso.)
- Verwende OLD_PASSWORD() um für den Account, der mit der alten PHP- bzw. MySQL-Client-API-Version arbeiten soll, das Passwort zu setzen. Dazu musst du den entsprechenden Datensatz der Tabelle user direkt ändern, also UPDATE statt GRANT. Danach FLUSH PRIVILEGES oder Server neu starten. Nun sollte sich auch der alte Client anmelden können.
PERFEKT!! :-)) vielen vielen dank delefix für die hilfe... das neue passwort hash war das problem.. root mit old_password upgedated und die sache flutscht ;-))
danke nochmal *g
das seltsame: nehme ich apache 2.2 und php5 und exakt den gleichen ordner von myadmin mit genau der selben config, funktioniert der login einwandfrei!!!
Erklärlich, da in dieser PHP-Version eine modernere MySQL-Client-API enthalten ist. Ebenso wie in deinem Kommandozeilen-Tool.
echo "$verabschiedung $name";