просто не надо подключать публичный FTP к исполняемой папке сайта Не каждому светит эта головная боль. Однако наличие и активность ботов в сети не указывает на "дырявость" php
как сделать выдачу временной ссылки без sql и txt файлов, что бы конкретному ip уникальная ссылка была постоянная для конкретного Ip ?
Не совсем понял, что за временная ссылка должна быть, но может это тебе поможет. Spoiler: Это вывод указанной информации указанному IP. <?php $ip =& $_SERVER['REMOTE_ADDR']; switch ($ip) { case '127.0.0.1': echo 'http://ya.ru/'; break; } ?> Spoiler: Тоже самое, но уже с случайной генерацией урл <?php $ip =& $_SERVER['REMOTE_ADDR']; switch ($ip) { case '127.0.0.1': echo 'http://ya.ru/' . md5(time()) . '.html'; break; } ?>
слепи хэш из IP только следует учесть, что куча разных юзеров могут сидеть с одного белого IP, поэтому при лепке хэша можно добавить название браузера, например
Совсем новичок,прошу помочь и не забрасываться Задача зашифровать битным XORом $a="Наша строка длиннее, чем сам ключ" $b = "Вася" 1используя цикл строку $b сделать такой же длинны как $a 2затем посимвольно зашифровать и вывести на экран массив-шифровку 3 затем расшифровать и вывести если не хотите решать,то дайте пожалуйста ссылки на на функции какие нужно чтобы сделать эти пункты спасибо заранее
PHP: <?php$data = 'Наша строка длиннее, чем сам ключ';$key = 'Вася';$data_sz = strlen($data);$key_sz = strlen($key);if($key_sz < $data_sz) for($i = $key_sz; $i < $data_sz; ++$i) $key .= $key[$i % $key_sz];echo 'String to encrypt: ' . $data . '<br />';echo 'Extended key: ' . $key . '<br />';for($i = 0; $i < $data_sz; ++$i) $data[$i] = chr(ord($data[$i]) ^ ord($key[$i]));echo 'Encrypted string: ' . $data . '<br />';for($i = 0; $i < $data_sz; ++$i) $data[$i] = chr(ord($data[$i]) ^ ord($key[$i]));echo 'Decrypted string: ' . $data . '<br />';
Попробуй перед тем, как задать вопрос на форуме, прогуглить его. Ты оху**шь (будешь приятно удивлен), насколько это эффективнее.
У меня есть фейк, ВОТ ОН Все нормально, кроме одного: если нажать "Войти" без ввода логин/пароля, все равно происходит вход. Вопрос: как сделать так, чтобы без ввода логин/пароля показывал ошибку типа "Введите логин и пароль"
Проверяй поля (input) в условии на пустоту. Лучше Java (ой). И стили css примени как у орегинала страницы на вывод ошибки.
как мне выбрать случайную запись из базы, при запросе разное случайное значение выводить надо ? делаю вот так, но нет результата PHP: $result=mysql_query("SELECT `invite_code` FROM `promo_code` WHERE `rotator`='on' AND `check_status`='1' ORDER BY RAND() LIMIT 1");$sql_result=mysql_query($result);$row=mysql_fetch_array($sql_result);mysql_free_result($sql_result);
id у записей есть? where id=rand() если есть не шарю в sql, но я бы по id рандил, хотя id такого может не быть хм может выбрать все записи( если их не много ) и уже в приложении ранд сделать? или в приложухе срандить диапазон 543 985, взять эти 442 записи и в приложухе опять же срандомить
2 раза использован mysql_query. Вторую строчку нужно выкинуть. А вообще надо отказываться от этой архаики в пользу PDO. В след. раз при вопросах об SQL неплохо было бы видеть схему данных.
PHP: <?php$ip = '2a02:6b8:0:f09:0:0:0:5c';if(filter_var($ip,FILTER_VALIDATE_IP)){ echo 'ip введен корректно';}else{echo 'не соотвествует';}?>
помогите пожалуйста, можно ли решить такую задачку? как отличить ipv4 от ipv6 с помощью php ? определить тип посещения: ipv4 или ipv6 адрес
я бы вот так сделал, filter_var с флагами FILTER_FLAG_IPV4 и FILTER_FLAG_IPV6: PHP: <?phpfunction type_ip(){//ipv4if(filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP,FILTER_FLAG_IPV4)){$ip_type = 'ipv4';}else{//ipv6if(filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP,FILTER_FLAG_IPV6)){$ip_type = 'ipv6';}//ipv6}//ipv4return $ip_type;}echo type_ip();//ip type?>
Всем привет, переделывал один код для календаря на php, но сделать выделение ячеек с субботами и воскресеньями - как выходных дней не получилось, помогите пожалуйста выделить субботы и воскресенья в ячейке календаря код календаря: PHP: <style>table.calendar { border-left:1px solid #999; }tr.calendar-row { }td.calendar-day { min-height:80px; font-size:11px; position:relative; } * html div.calendar-day { height:80px; }td.calendar-day:hover { background:#eceff5; }td.calendar-day-np { background:#eee; min-height:80px; } * html div.calendar-day-np { height:80px; }td.calendar-day-head { background:#ccc; font-weight:bold; text-align:center; width:120px; padding:5px; border-bottom:1px solid #999; border-top:1px solid #999; border-right:1px solid #999; }div.day-number { padding:5px; color:#1C1C1C; font-weight:bold; font-size: 25px; font-family: Arial Black; float:right; margin:-5px -5px 0 0; width:100%; text-align:center; }td.calendar-day, td.calendar-day-np { width:120px; padding:5px; border-bottom:1px solid #999; border-right:1px solid #999; }</style><?php/* Функция генерации календаря */function draw_calendar($month,$year){ /* Начало таблицы */ $calendar = '<table cellpadding="0" cellspacing="0" class="calendar">'; /* Заглавия в таблице */ $headings = array('Понедельник','Вторник','Среда','Четверг','Пятница','Суббота','Воскресенье'); $calendar.= '<tr class="calendar-row"><td class="calendar-day-head">'.implode('</td><td class="calendar-day-head">',$headings).'</td></tr>'; /* необходимые переменные дней и недель... */ $running_day = date('w',mktime(0,0,0,$month,1,$year)); $running_day = $running_day - 1; $days_in_month = date('t',mktime(0,0,0,$month,1,$year)); $days_in_this_week = 1; $day_counter = 0; $dates_array = array(); /* первая строка календаря */ $calendar.= '<tr class="calendar-row">'; /* вывод пустых ячеек в сетке календаря */ for($x = 0; $x < $running_day; $x++): $calendar.= '<td class="calendar-day-np"> </td>'; $days_in_this_week++; endfor; /* дошли до чисел, будем их писать в первую строку */ for($list_day = 1; $list_day <= $days_in_month; $list_day++): $calendar.= '<td class="calendar-day">'; /* Пишем номер в ячейку */if ($list_day==date('d')) $calendar.= '<div class="day-number" style="color:#CD0000">' . $list_day . '</div>';else $calendar.= '<div class="day-number">' . $list_day . '</div>'; /** ЗДЕСЬ МОЖНО СДЕЛАТЬ MySQL ЗАПРОС К БАЗЕ ДАННЫХ! ЕСЛИ НАЙДЕНО СОВПАДЕНИЕ ДАТЫ СОБЫТИЯ С ТЕКУЩЕЙ - ВЫВОДИМ! **/ $calendar.= str_repeat('<p> </p>',2); $calendar.= '</td>'; if($running_day == 6): $calendar.= '</tr>'; if(($day_counter+1) != $days_in_month): $calendar.= '<tr class="calendar-row">'; endif; $running_day = -1; $days_in_this_week = 0; endif; $days_in_this_week++; $running_day++; $day_counter++; endfor; /* Выводим пустые ячейки в конце последней недели */ if($days_in_this_week < 8): for($x = 1; $x <= (8 - $days_in_this_week); $x++): $calendar.= '<td class="calendar-day-np"> </td>'; endfor; endif; /* Закрываем последнюю строку */ $calendar.= '</tr>'; /* Закрываем таблицу */ $calendar.= '</table>'; /* Все сделано, возвращаем результат */ return $calendar;}/* СПОСОБ ПРИМЕНЕНИЯ *///месяцы и недели на русскомfunction rdate($param, $time=0) {if(intval($time)==0)$time=time();$MN=array('Января', 'Февраля', 'Марта', 'Апреля', 'Мая', 'Июня', 'Июля', 'Августа', 'Сентября', 'Октября', 'Ноября', 'Декабря');$MonthNames[]=$MN[date('n',$time)-1];$MN=array('Воскресенье','Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', '');$MonthNames[]=$MN[date('w',$time)];$arr[]='M';$arr[]='N';if(strpos($param,'M')===false) return date($param, $time); else return date(str_replace($arr,$MonthNames,$param), $time);}//месяцы и недели на русском$mesjac = date('n');$god = date('Y');echo '<h2 style="text-align:center; font-family: Arial Black; font-size: 19px; color: #1E90FF;">Сегодня '.rdate('j M Y года. N. H:i').'</h2>';echo draw_calendar($mesjac,$god);?>