Harry: MySql MD5 Feldverschlüsselung / Ergebnispufferung?

Beitrag lesen

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

--
  Die ideale Zeit für Firntouren:
  http://harry.ilo.de/projekte/berge/