Napisałem sobie taki kod na zamiane na krótkie url'e:
<?php
function simple_uri()
{
$uri="old";
$path_info = getenv("PATH_INFO"); $http_query = getenv("QUERY_STRING"); $request_uri = getenv("REQUEST_URI");
if ($path_info!='')
{
if ($http_query!='') {
$uri = $path_info."?".$http_query;
} else {
}
} else {
}
if ($uri == "") {
$uri = "index.php" ;
}
list
($uri, $nothing) = explode("?",$uri); if ($uri == "user.php" || $uri == "admin.php") {
$uri="old";
} else {
$uri="old";
} else {
$uri="new";
}
}
return $uri;
}
function simplify_urls(&$s)
{
$base_url = pnGetBaseURL();
function tyt($id, $tyt) {
return '<a class="pn-title" href="'.$tyts.'-a'.$id.'.html">'.$tyt.'</a>';
}
$s = preg_replace('|<a class="pn-title" href="($base_url)?modules.php?op=modload&(amp;)?name=News&(amp;)?file=article&(amp;)?sid=([0-9]+)&(amp;)?mode=thread&(amp;)?order=0&(amp;)?thold=0">(.+?)</a>|', tyt
('5', '9'), $s);
return $s;
}
?>
Wszystko ładnie działa, oprócz tego że powstaje Nazwa Arta-a390.html zamiast Nazwa-Arta-a390.html. W czym tkwi problem? Zastosowałem przecież str_replace do zamiany spacji na -
Proszę o pomoc
Ten post edytował Nazin 5.11.2005, 18:25:45