WordPressの質問(q10165331)の続
URLを連番にすべきかuuidにすべきか迷っているのですが、どちらが良いと思われますでしょうか?
一連番号のIDを避けるべきなのであればメジャーなサイトはすべてランダム文字列になっているはずではないかという意見とURLが予測しやすいと攻撃しやすいという意見があるようです。
IDを付ける際にBase58を使う、N 進数の文字列を使うなどuuid意外にも色んな方法があるようで、どうすべきか分かりません、アドバイスお願い致します。
$url = home_url('質問表示画面?'.$row->ID);
※idをautoincrementしない方が良い理由
https://zenn.dev/praha/articles/3c84e3818891c3
※ユーザIDを連番にしてURLに使っても問題ない
https://teratail.com/questions/364664
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11270700181
※短縮URLの付け方
https://sousaku-memo.net/php-system/71
https://co.bsnws.net/article/256
※htmlspecialcharsでIDをエスケープ
http://lovee7.blog.fc2.com/blog-entry-34.html
質問一覧表示(single-que_list.php)
回答可能なページ(single-complete.php)
<?php
/*
Template Name: que_list
固定ページ: 質問一覧画面
*/
get_header();
$sql = 'SELECT * FROM sortable';
$query = $wpdb->prepare($sql);
$rows = $wpdb->get_results($query);
$upload_dir = wp_upload_dir();
foreach ($rows as $row) {
$url = home_url('質問表示画面?'.$row->ID);
$pattern = $upload_dir['basedir'].'/attach/'.$row->ID.'_0.*';
$files = glob($pattern);
if (empty($files)) {
$view = '<img src="ダミー画像パス">';
} else {
$info = pathinfo($files[0]);
$attach_url = $upload_dir['baseurl'].'/attach/'.$info['basename'];
$ext = $info['extension'];
switch ($ext) {
case 'jpeg':
case 'png':
$view = '<img style="height: 50px;" src="'.$attach_url.'">';
break;
case 'mp4':
$view = '<video style="height: 50px;" src="'.$attach_url.'">';
break;
case 'pdf':
$view = '<iframe style="height: 50px;" src="'.$attach_url.'"></iframe>';
break;
default:
$view = '';
break;
}
}
echo '<div><a href="'.$url.'">'.$row->unique_id;
echo '<div>'.$row->namae.'</div>';
echo '<div>'.$view.'</div>';
echo '<div>'.mb_strimwidth($row->message, 0, 38, '・・・').'</div>';
echo '</a></div>';
}
?>
お礼
今回は貴重なお時間を割いてたくさんのアドバイスをいただきまして、 本当にありがとうございました。 特にご回答を頂いた皆様からのアドバイスは、 凝り固まっていた自分の発想の転換になり、 アイディアが湧いてくるようになりました。 皆様がいなかったら、投げ出していたかもしれません。 ご相談させいただけて助かりました。 私の成長を期待していてください。 これからも、ご指導の程、よろしくお願いいたします。 今回は貴重なご回答ありがとうございました