phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_String_in_allen_mySQL-Datans=E4tzen_ersetzen?=

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_String_in_allen_mySQL-Datans=E4tzen_ersetzen?=

Christoph Schick phpnewsletter_(at)_schickpriv.at
Mon, 26 Feb 2001 20:18:17 +0100


Hi Dominik!

Mir ist eine Lösung einfallen, vielleicht klappt es ja.
Ich gehe davon aus das jeder Datensatz in der Tabelle eine auto_increment id
hat, sonst weiß ich selbst nicht weiter.

<?php
$datenbank=mysql_connect("localhost","user","passwort");
mysql_select_db("datenbankname",$datenbank);
$mysqlstring="SELECT ersetzfeld FROM tabellenname";
$mysqlquery=mysql_query($mysqlstring,$datenbank);

$daten=array();
$i=0;
//Hier übernimmst du alle zu durchsuchenden Felder in einen Array.
while($tempdata = mysql_fetch_row($mysqlquery))
     {
      $daten[$i] = $tempdata[0];
      $i++;
     }

$i=0;

//Nun durchsuchst und ersetzt du jedes Element des Arrays
while($i < sizeof($daten))
     {
      while(preg_match($suchstring,$daten[$i],$teilstring))
           {
            $daten[$i] =
preg_replace($vorhandenerstring,$ersetzendurchstring,$daten[$i]);
           }
      $i++;
     }

//Nun speicherst du diese Werte wieder in die Datenbank
$i=0;
while($i < sizeof($daten))
     {
      $mysqlstring="UPDATE tabellenname SET ersetzfeld='$daten[$i]' WHERE
id='$i+1'";
      mysql_query($mysqlstring,$datenbank);
      $i++;
     }

mysql_close();
?>



php::bar PHP Wiki   -   Listenarchive