Возможно тем, кто собрался изучать php пригодятся некоторые примеры стандартных решений. Зачем? - чтоб начинающие не наступали на грабли, которыми уже кто-то поранился
Если кому-то интересен этот язык, время от времени буду добавлять простые примеры, кто желает помочь новичкам - присоеденяйтесь.
Чтобы в дальнейшем не было ошибок с бд, при регистации нового пользователя полезно проверить, не занят ли его ник, это можно сделать так:
$result = mysql_query ("SELECT * FROM base_users WHERE nick = '$nick'");
if ($row = mysql_fetch_array($result)) {
$dubl = $row['id'];
}else{$dubl = 0;}
if($nick !="" AND $dubl==0){
// если такого ника нету, регистрируем юзера
}else{
// иначе предлагаем выбрать другой ник
}
Как узнать, правильный ли e-mail вводит пользователь? (e-mail должен соответствовать выражению ххх@ххх.ххх)
$email_address = $_POST['email_address'];
if(!preg_match("/^\w+([\.\w]+)*\w@\w((\.\w)*\w+)*\.\w{2,4}$/", $email_address))
{
// сообщаем об ошибочном адресе
exit;
}
// все нормально, работаем дальше
Простой постраничный вывод данных (похож на тот, что используется на этом форуме)
$num = 10; // Число записей всего.
$perpage = 7; // Кол-во, показываемых записей на странице.
$pages_count = @ceil($num/$perpage);
$pages .= 'Страницы:';
for($j=1;$j<=$pages_count;$j++)
{
if ($_GET['page'] != $j)
{
$pages .= ' <a href="?page='.$j.'"><b>'.$j.'</b></a> ';
}
else
{
$pages .= ' <b>'.$j.'</b> ';
}
}
Дружим с русским. Скажу по секрету, англичанам писать немножко проще
Ведь у них и 2 days, и 10 days... У нас же 2 дн
я, но 10 дн
ей. Вот простая функция, делающая нужное окончание:
function kols($users)
{
$a=substr($users,strlen($users)-1,1);
if($a==1) $str="ь";
if($a==2 || $a==3 || $a==4) $str="я";
if($a==5 || $a==6 || $a==7 || $a==8 || $a==9 || $a==0) $str="ей";
return $str;
}
В нужном месте просто вызываем:
$kols=15;
//берем количество, например из базы
echo $kols." пользовател".kols($kols);
// выводим на экран, используя правила русского языка
данный пример будет выводить правильные окончания пользователь/пользователя/пользователей