Holladiewaldfee,
Aber bei 3000 Einträgen ist das wohl zuviel arbeit die alle einzeln umzuwandeln.
Ich täte es so machen:
$rRes = mysql_query('SELECT pass FROM tabelle');
$aRes = array();
while($x = mysql_fetch_array($rRes))
$aRes[] = $x['pass'];
for($i=0, $j=count($aRes); $i<$j; $i++)
mysql_query('UPDATE tabelle SET pass=''.md5($aRes[$i]).'' WHERE pass=''.$aRes[$i].''');
Kann natürlich auch sein, daß das noch deutlich einfacher geht.
Vorm Ausprobieren aber unbedingt 'ne Sicherheitskopie der Tabelle machen ;)
Frage an die PHP-/MySQL-Interna-Checker:
Kann ich das Script wiefolgt kürzen ohne MySQL vollkommen durcheinander zu bringen?
$rRes = mysql_query('SELECT pass FROM tabelle');
while($x = mysql_fetch_array($rRes))
mysql_query('UPDATE tabelle SET pass=''.md5($x['pass']).'' WHERE pass=''.$x['pass'].''');
Ich würde sagen ja, weil ich davon ausgehe, daß MySQL das Ergebnis des SELECTs erstmal insgesamt ausliest und puffert und nicht zeilenweise erst zum Abrufzeitpunkt. Aber 100%ig sicher bin ich mir nicht.
Ciao,
Harry