新しい投稿を追加するには投稿フォームがあります。投稿のタイトルをpost_urlまたはslugとしました。ユニークなpost_urlが必要です。投稿のタイトルを使用してユニークなスラッグを作成する
$post_name = $this->input->post('post_title');
function clean($post_name) {
$name = trim($post_name);
$post_name = str_replace(' ', '-', $name);
return preg_replace('/[^A-Za-z0-9\-]/', '', $post_name);
}
$post_url = clean($post_name);
$query = mysql_query("select post_url from sa_posts where post_url like '" . $post_url . "%'");
while ($r = mysql_fetch_assoc($query)) {
$slugs[] = $r['post_url'];
if (mysql_num_rows($query) !== 0 && in_array($post_url, $slugs)) {
$max = 0;
while (in_array(($post_url . '-' . ++$max), $slugs)) ;
$post_url .= '-' . $max;
}
}
echo "Slug " . $post_url;
を私のように出力を取得しています - -
ポストURL
後のurl-1
後のURL - ここ
は、私がこれまでにやっていることです1-1ポストurl-1-1-1
しかし、私はのような出力をしたい -
ポストURL
後のurl-1
後のurl-2
後のurl-3
私のコードには何がありますか?
私を助けてください。
ありがとうございます。
第1の変化の$ POST_URL =。 ' - '。 $ max; $ post_url = $ post_urlになります。 $ max; – coder
@coderちょうどハイフン( - )を取り除いて出力をpost-url、post-url1、post-url2として表示しています – Deepak
ansを確認してください。 – coder