Einen ersten Entwurf für das Script hab ich jetzt schonmal. Nun muss das nur noch auf die TypoDB Variablen zugreifen können und eben automatisch aufgerufen werden.
Dann soll auch die erste While Schleife weg und der ganze Rumpf nur für die aktuelle uid ausgeführt werden.
<?
/* Connection to database */
$database = mysql_connect("localhost", "root", "");
mysql_select_db("project1",$database);
$result = mysql_query("SELECT uid,title FROM pages WHERE deleted=0", $database);
while($row = mysql_fetch_array($result)) {
$alias = $row["title"];
$uid = $row["uid"];
$alias = strtolower($alias);
$alias = ereg_replace("ä", "ae", $alias);
$alias = ereg_replace("ü", "ue", $alias);
$alias = ereg_replace("ö", "oe", $alias);
$alias = ereg_replace("Ä", "ae", $alias);
$alias = ereg_replace("Ü", "ue", $alias);
$alias = ereg_replace("Ö", "oe", $alias);
$alias = ereg_replace("ß", "ss", $alias);
$alias = ereg_replace("+", "_und_", $alias);
$alias = ereg_replace("?", "", $alias);
$alias = ereg_replace(":", "", $alias);
$alias = ereg_replace(".", "", $alias);
$alias = ereg_replace(",", "", $alias);
$alias = ereg_replace("-", "", $alias);
$alias = ereg_replace("–", "", $alias);
$alias = ereg_replace("( )", "_", $alias);
$alias = ereg_replace("!", "", $alias);
$alias = ereg_replace("(.*)", "", $alias);
$alias = ereg_replace(""", "", $alias);
$alias = ereg_replace("^_(.*)", "\1", $alias);
$alias = ereg_replace("(.*)_$", "\1", $alias);
$alias = ereg_replace("´", "", $alias);
$alias = ereg_replace("'", "", $alias);
$alias = ereg_replace("*", "", $alias);
$alias = ereg_replace("à", "", $alias);
$alias = ereg_replace("__", "_", $alias);
$alias = urlencode($alias);
//print $alias.".0.html<br>";
$duplicate = mysql_query("SELECT uid,alias FROM pages WHERE deleted=0 AND alias='$alias' AND uid!=$uid", $database);
if(mysql_num_rows($duplicate) > 0) {
$suffix = 0;
while(mysql_fetch_array($duplicate)) {
$suffix++;
}
$alias = $alias."_".$suffix."<br>";
}
mysql_query("UPDATE pages SET alias='$alias' WHERE uid=$uid", $database);
}
?>