Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   [PHP] ЗАДАНИЯ от Krist_ALL (https://forum.antichat.xyz/showthread.php?t=126194)

Krist_ALL 20.06.2009 18:07

[PHP] ЗАДАНИЯ от Krist_ALL
 
PHP - ЗАДАНИЯ ОТ Krist_ALL



Что это такое?
PHP задания - это небольшие задачки по php. Вы можете из выполнять для того, чтобы попрактиковатся в php улучшить и систематизировать свои знания. За каждое выполненое задание вы получаете от меня +4 Задания практикуются в закрытых группах. В предложениях по улучшению данного раздела, я видел что несколько человек просили сделать задания. Вот я и сделал)

Всем ли можно выполнять задания?
Всем, но есть небольшапя просьба, профи, дайте новичкам подумать. И, те, кто состоит в закрытых группах - у вас свои задания, у нас свои. Можете конечно выполнить...Но лучше пусть выполняют люди из паблик раздела

Можно я свои задания здесь напишу?
Да, и я их добавлю во второй пост

Я тупой, объясните еще раз нафига задания и кому это выгодно?
В закрытых группах есть раздел задания - мне не дадут соврать участники закрытых групп. Там есть задания - например залить шелл на сайт, есть и задания на php! Я решил сделать задания тоже только в паблик разделе. Мне ничего не задавали, мне не требуются решения! Выполнили задание - +4 вам в репку и все.

Откуда эти задания?
Задания я беру из головы, иногда из интернета, иногда участники форума подбрасывают.

Я решил 2 задания, а мне поставили плюсики как за одно задание! Почему?
Я не могу ставить сразу 2 раза репутацию. А потом я могу забыть что вы выполнили 2 задания и что я за него не поставил репу. Вы же делаете задания не ради репутации? ;)

Почему тема называется php задания, а тут есть задания на хак?
PHP кодер должен знать как защитить свой скрипт. А то попадаются очень наивные кодеры, которые расчитывают что переменная не может содержать спецсимволов и значение её берётся прям из GET / POST / COOKIE без фильтрации и суётс в запрос к БД. Вариантов масса. Поэтмоу надо делать не только чтобы работало, а чтоб без отказно работало и сломать было нельзя.

Есть ли на других сайтах такие же задания по php?
Есть, но задания на других сайтах менее интересные и не в таком колличестве. Мне кажется задание написать гостеауху - это бред. Тут хорошие интересные задания, разного уровня сложности. Надеюсь Вам понравится! :)

Сколько еще задания будет?
100 а может быть и 1000) Конечно, у меня фантазия не безгранична, но я стараюсь придумывать много интересных заданий. Когда будет 100 задания я сделаю PDFку - 100 задания php :)





Проект закрыт! Задания больше не будет. Я объясню почему.
После смены алгоритма репутации, народ перестал решать задания, оказывается раньше люди решали задания за +++++, а ведь они еще приобретали опыт и новые знания. Но главным для них были +++++. Очень жаль. Спасибо всем , кто добавлял свои задания. Я планировал много интересных задания и книгу 100 заданий php. А сейчас заданий только 50. Может быть задания появються на другом всем известном портале. И всеже ВСЕМ респект огромный!!! :)








-------------------------------------------------------------------------------------
50 ЗАДАНИЙ
-------------------------------------------------------------------------------------

Новости:

Проект закрыт!
50 заданий)
Теперь задания будут сложнее.













ЗАДАНИЯ

__________________________________________________ _____________________________________________












Задание 001
Составить регулярное выражение, которое поменят местами 2 слова в строке. Строка берется из GET переменной.

Комментарий: Задание совсем простое. Для разминки)
Ответ




Задание 002
Написать функцию, которая многократно, без учета регистра вырезает заданые слова. Например select,union,update или матерные слова :D
Ответ




Задание 003
Генерировать 3 случайных числа в диапозоне от 1 до 10 пока сумма этих 3х чисел не будет равна 16.
Ответ




Задание 004
Есть массив array(10,6,15,25,18,11,10,5,7,30). Вывести индексы тех его элементов, которые делятся на 5 без остатка.
Ответ 1 Ответ 2



Задание 005СПАЛИЛ GIFTS! За что ему говрим ''СПАСИБо!"
В GET переменной передается строка вида tratata#tratata. Есть регулярка вида
preg_match('@^\w+@',$_GET['stroka']); Как видно регуляка ищет строку с буквами, вопрос, почему true для строки tratata#tratata и false для tratata%tratata



Задание 006
Есть админка.
login.php
PHP код:

<?php
....


if(isset(
$_GET['login']) and isset($_GET['password'])) 
{
   if(
preg_match('#^\d$#',$_GET['password'])) {
      
$password = (int)$_GET['password'];     }
   else 
$password $_GET['password'];   
   
$login $_GET['login'];

 if(
$login == 'admin' and $password == "gg") echo 'OK'; else exit; 
}

...


?>

Как войти в админку не зная пароля? Логин всегда admin
Ответ



Задание 007 от d_x
Скрипты выводят некоторые строки или числа, подумайте, почему именно так?
Сложность по возрастанию.
PHP код:

<?php
print ((print '')<<1)+((print '')<<(((print '')<<1)+(print '')))+((print '')<<(((print '')<<1)+((print '')<<1)))+((print '')<<(((print '')<<1)+((print '')<<1)+((print '')<<1)+print ''))+((print '')<<(((print '')<<1)+((print '')<<1)+((print '')<<1)+((print '')<<1)+print ''));  
?>

PHP код:

<?php
for($i=0,$a=a;$i<=2941;$i++) 
$a++; 
eval(
$a."('".++$a."');");  
?>

PHP код:

<?php
$a
=1
$a=$a<<7
$a-=$a>>3
${
chr($a)}=$a
$a+=2
$p=chr($p).chr($a); 
$a=0151
$p.=chr($a); 
$a=m
$p.=++$a.t._.r
$p($p($p)); 
?>




Задание 008
Как обойти фильтр?
PHP код:

<?php
$id 
str_ireplace('select'''$_GET['id'])
$query mysql_fetch_array(mysql_query("select * from news where id ='$id' "));
?>

Ответ




Задание 009
В директории 3 файла: index.php , news.inc , config.php. Надо обойти защиту от расширения и прочитать файл config.php
PHP код:

<?php

$f 
= (string)@$_GET['f'];  
$f str_replace('/'''$f);  
$f .= '.inc;  

if (file_exists($f)) { 
   echo htmlspecialchars(file_get_contents($f));  
                                    }  
 
else  exit;

  
?>

Ответ



Задание 010
Провести sql injection
PHP код:

<?php
$name 
str_replace('/**/','','str_replace(' ','',$_GET['name']));
$query = mysql_query("select * from users where name='
$name'"); ?>

Ответ



Задание 011 от d_x
Есть строка:
PHP код:

 $str=
383 текст с числами 5838 
635 еще текст 001 462 
432текст564 
'


Задание:
Написать скрипт, который все цифры в тексте заменит на их шестнадцатеричные эквиваленты, чтобы получилось так:
PHP код:

PHP код:
 
0x17F текст с числами 0x16CE 
0x27B еще текст 0x1 0x1CE 
0x1B0текст0x234 


Запрещено использовать любые циклы.
Ответ 1 Ответ 2



Задание 012 от BlackSun
Нарыть активную XSS
PHP код:

<? // config.php 
    
$dbhost 'localhost'
    
$dbuser 'root'
    
$dbpass ''
    
$dbname 'xss'
     
    
mysql_connect($dbhost$dbuser$dbpass) or die('Can\'t connect to MySQL server.'); 
    
mysql_select_db($dbname) or die('Can\'t select db.'); 
?>

PHP код:

<? // index.php 
    
include('config.php'); 

    function 
callback($text
    { 
        return 
html_entity_decode($text[0]); 
    } 
     
    function 
parse_bb($text
    { 
        
$text str_replace('"'''$text); 
        
$text str_replace("'"''$text); 
        
$text htmlspecialchars($text); 
        
$text str_replace("\r\n"'<br>'$text); 
         
        
$bb = array('[B]' => '<b>''[/B]' => '</b>''[U]' => '<u>''[/U]' => '</u>'
                    
'[I]' => '<i>''[/I]' => '</i>''[CENTER]' => '<center>''[/CENTER]' => '</center>'
                    
'[MAIL=(' => '<a href="mailto:'')MAIL]' => '">''[/MAIL]' => '</a>'
                    
'[HREF=(' => '<a href="'')HREF]' => '">''[/HREF]' => '</a>'
                    
'[IMG]' => '<img border="0" src="''[/IMG]' => '">''[HR]' => '<hr>'); 
                     
        foreach (
$bb as $code => $replace
        { 
            
$text str_replace($code$replace$text); 
        } 

        
$text preg_replace_callback('#"(.*?)"#''callback'$text); 
         
        return 
$text
    } 
     
    if (isset(
$_POST['name']) && isset($_POST['text'])) 
    { 
        
mysql_query('INSERT INTO gb (`name`, `text`) VALUES (\''.addslashes(htmlspecialchars($_POST['name'])).'\', \''.parse_bb($_POST['text']).'\')'); 
        
header('Location: index.php'); 
        die(); 
    } 
?> 
<html> 
<head> 
    <title>Active XSS</title> 
    <style type="text/css"> 
        html { 
            background-color: #e6e6e6; 
        } 
        body { 
            font-family: Verdana, Arial, sans-serif; 
            font-size: 12px; 
            margin: 10px; 
            border: 1px solid #d0d0d0; 
            background-color: #f6f6f6; 
            padding: 10px; 
        } 
        #text { 
            border: 1px solid #999; 
            background-color: f6f6f6; 
            color: #000; 
            font-family: Verdana, Arial, sans-serif; 
            font-size: 12px; 
        } 
        #input1 { 
            border: 0; 
            color: #000; 
            width: 100%; 
        } 
        textarea { 
            border: 0; 
            color: #000; 
            width: 100%; 
            height: 150px; 
        } 
        table { 
            font-family: Verdana, Arial, sans-serif; 
            font-size: 12px; 
        } 
        #button { 
            border: 0; 
            background-color: f6f6f6; 
            color: #000; 
            width: 99%; 
        } 
        #border { 
            border: 1px solid #999; 
            font-family: Verdana, Arial, sans-serif; 
            font-size: 12px; 
        } 
    </style> 
</head> 
<body> 
<form method="post"> 
    <table border="0" cellpadding="1" cellspacing="1" width="80%" align="center"> 
    <tr> 
        <td width="100px">You name: </td> 
        <td id="border"><input type="text" name="name" value="Vasya" id="input1"></td> 
    </tr> 
    <tr> 
        <td colspan="2"> 
        <b>Allowed BB code:</b><br> 
        <ul> 
        <li><b>[B][/B] [U][/U] [I][/I] [CENTER][/CENTER] [IMG][/IMG] [HR]</b></li> 
        <li><b>[MAIL=(</b>mail@mail.ru<b>)MAIL]</b>My MAIL<b>[/MAIL]</b></li> 
        <li><b>[HREF=(</b>http://fsb-my.name<b>)HREF]</b>My Site<b>[/HREF]</b></li> 
        </ul> 
        </td> 
    </tr> 
    <tr> 
        <td colspan="2">&nbsp;</td> 
    </tr> 
    <tr> 
        <td colspan="2" align="center" id="border"> 
            <textarea name="text"></textarea> 
        </td> 
    </tr> 
    <tr> 
        <td colspan="2" align="center" id="border"><input type="submit" value="Post" id="button"></td> 
    </tr> 
    <tr> 
        <td colspan="2">&nbsp;</td> 
    </tr> 
    <tr> 
        <table border="0" cellpadding="2" cellspacing="2" width="100%" align="left" id="text"> 
        <? 
            $result 
mysql_query('SELECT * FROM gb ORDER BY id DESC'); 
            if (
$result
            { 
                while (
$row mysql_fetch_array($result)) 
                { 
                    
?> 
                    <tr> 
                        <td><?=$row['name'];?> ОХЬЕР:</td> 
                    </tr> 
                    <tr> 
                        <td><?=$row['text'];?></td> 
                    </tr> 
                    <tr> 
                        <td align="center"><font color="Gray">---------</font></td> 
                    </tr> 
                    <? 
                

            } 
        
?> 
        </table> 
    </tr> 
    </table> 
</form> 
</body> 
</html>

Код:

CREATE TABLE IF NOT EXISTS `gb` (
  `id` int(11) NOT NULL auto_increment,
  `name` text NOT NULL,
  `text` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM;

Ответ



Задание 013
Войти в панель администрирования, используя sql injection . В БД не лезть. Обмануть проверку просто.
PHP код:

<?php // Login.php
....
$query "select * from admin where pass = '$_POST['pass']' and login = '$_POST['login']'";


?>

Ответ



Задание 014
Составить регулярное выражение, которое заменяет на лету
набор букв на мд5(от букв). Пример: 44ffff385dddd55
заменить на 44 (хешь от ffff) 385 (хешь от dddd) 55
Ответ



Задание 015
Какое число будет записано в переменую id при регистр глобал ON, и объяснить ПОЧЕМУ.
POST => $id = 1
COOKIE => $id = 2
GET => $id = 3
PHP код:

<?ph
$id 
$_REСQUEST['id'];
?>

Ответ



ЗАДАНИЕ 016 от d_x
Есть массив:
PHP код:

$arr=Array( 
Array(
'key1'=> 1'key2'=>3), 
Array(
'key1'=> 8'key2'=>4), 
Array(
'key1'=> 5'key2'=>6), 
Array(
'key1'=> 5'key2'=>8), 
Array(
'key1'=> 6'key2'=>9), 
Array(
'key1'=> 3'key2'=>7), 
Array(
'key1'=> 5'key2'=>1), 
Array(
'key1'=> 2'key2'=>2), 
Array(
'key1'=> 0'key2'=>0), 
Array(
'key1'=> 2'key2'=>5
); 

Написать функцию для его сортировки, чтобы можно было отсортировать этот массив, например, по ключам key1 по возрастанию и по ключам key2 по убыванию (нечто вроде sql - order by key1 asc, key2 desc), чтобы в результате получился такой массив:

PHP код:

Array( 
//все key1 - по возрастанию 
Array('key1'=>0,'key2'=>0), 
Array(
'key1'=>1,'key2'=>3), 
Array(
'key1'=>2,'key2'=>5), //тут 
Array('key1'=>2,'key2'=>2),  //и тут key2 - по убыванию 
Array('key1'=>3,'key2'=>7), 
Array(
'key1'=>5,'key2'=>8), //аналогично тут 
Array('key1'=>5,'key2'=>6), //тут 
Array('key1'=>5,'key2'=>1), //и тут 
Array('key1'=>6,'key2'=>9), 
Array(
'key1'=>8,'key2'=>4


Учесть, что ключей у вложенных массивов может быть сколько угодно, самих вложенных массивов также может быть любое число.
Ответ 1 Ответ 2



ЗАДАНИЕ 017
Есть строка текствоя. Нужно выделить красным слова, которые являются частью предыдущих слов. Например:
на входе "Ламерок ламер " на выхоже
Ламерок ламер
Ответ



ЗАДАНИЕ 018
Есть 2 переменные a = 5 И b =7. Нужно чтобы $a =7 а $b = 5 , при этом не создавая новых переменных
Ответ



ЗАДАНИЕ 019
$array = array(5,8,9,15,145,854,64,1,3,8,46,9999);
Определить максимальное число, которое находится в массиве, и вывести его индекс.
Ответ



Задание 020 от .:Enot:.
Предположим что у вас из интерпритатора спёрли функции implode() и join(). Напишите функцию, которая делает тоже самое что вышеупомянутые - объединяет массив в строку. Ну бинарнобезопасную обработку данных конечно можно опустить )
Ответ



Задание 021 от .:Enot:.
Есть два вот таких массива:
PHP код:

$num 5// Любая цифра 
$array1 = array(1357911131517); 
$array2 = array(246810); 

В итоге должно получиться следующее:
PHP код:

Array
        (
            [
0] => 1
            
[1] => 2
            
[2] => 3
            
[3] => 4
            
[4] => 5
        
)

Array
        (
            [
0] => 6
            
[1] => 7
            
[2] => 8
            
[3] => 9
            
[4] => 10
            
[5] => 11
            
[6] => 13
            
[7] => 15
            
[8] => 17
        


Т.е. два массива с элементами, отсортированными по возрастанию. Количество элементов в первом массиве определяется в переменной $num.
Естественно все действия только с исходными массивами, никаких range() и т.д. Ну и главное условие, циклами пользоваться нельзя
Ответ



Задание 022
У вас украли php функцию foreach(), написать ее на пхп) с использованием циклов.
Ответ



Задание 023
Определить с помощью регулярки делится ли число на 10 или нет.
Ответ



Задангие 024
Определить какой код выполнится быстрее и написать как вы оперделили это, а не просто мне так кажется :)
PHP код:

for($i=0;$i<10;$i++) 
{ echo 
'1php '; } 

PHP код:

while($i<10) {
echo 
'w1';
$i +=1;


Ответ



Задание 025
PHP код:

if(!preg_match('#\.php$#',$_FILES['name']))
{  
//Загрузка файла
}
else exit; 

Как видно из кода, проверяется расширение, если у файла расширение не php, то он загружается на сервер. Как залить шел?
Комментарий: Несовсем по пхп зададчка, но интересная.
Ответ



Задание 026
Объяснить, почему выводит 0.
PHP код:

$a 10;
$b 515;
$c 0.515;
$d $b<=$a&&$a==$c||$b>$c?0:1;
echo 
$d

Ответ



Зададние 027
Чего не знал програмист, кодя этот скрипт.
PHP код:

<?php
$name
htmlspecialchars($_POST['name'], ENT_COMPAT);
mysql_query("select * from users Where name = '$name'");
?>

Ответ



Зададние 028
Это скрипт инвайтов на одни супер пупер сайт. Надо ввести слово секретное и тогда будет доступна рега. Слова хранятся в бд. Если вы ввели слово и оно есть в бд - вы получите досутп к реге - это так задумывал горе кодер. Обойдите эту защиту.
PHP код:

<?php
// 
include('connect_database.php');

$b mysql_real_escape_string($_GET['word']);
mysql_query("select * from private where word like '$b'");

?>

Ответ



Задание 029
Написать скрипт зеркального отражения слов. На входе античат, на выходе тачитна - чтобы так можно было делать с любым словом.
Ответ 1 Ответ 2



Задание 030
PHP код:

<?php
$a 
= array('cat','dog','fox');
$b = array('Moscow','London');
$c = array('RED');
$d $b $a $c;
?>
Что окажется в массиве $d и почему.

Ответ 1 Ответ 2



Задание 031
Написать функцию определения сколько массивов содержит в себе массив. пример:
PHP код:

$a[]   //  0 
$a[][]  // 1
$a[][][][][] //4 

Ответ



Задание 032
Написать функцию, которая на выходе даст колличество спецсимволов во входной строке.
Ответ



Задание 033
PHP код:

<?php
$a 
= -1;
If(
$a == TRUE) echo 1;
?>

Почему выводит 1?
Ответ



Задание 034
PHP код:

<?php
echo (int)((0.1+0.7) *10); 
?>

Объяснить, почему выводит 7
Ответ



Задание 035 от mailbrush
Выполнить системную комманду, не используя каких-либо функциий, кроме echo (для вывода результата).
Ответ



Задание 036 от mailbrush


PHP код:

$word 'Hello'

Вывести значение переменной $word.
Строка "$word" в коде встречаться не должна.
Никакой конкатезации в коде не должно быть.
Ответ



Задание 037 от ElterRUS
Обойти авторизайию
PHP код:

<?php 
        $login 
substr($_GET['login'],0,6); 
        
$password substr($_GET['password'],0,6); 

        
$login str_replace('#'''$login); 
        
$login str_replace("-"''$login); 
        
$login str_replace('*'''$login); 
        
$login str_replace('|'''$login); 

        
$password str_replace('#'''$password); 
        
$password str_replace("-"''$password); 
        
$password str_replace('*'''$password); 
        
$password str_replace('|'''$password); 

        
$login preg_replace("/and|or/i","fuck",$login); 
        
$password preg_replace("/and|or/i","fuck",$password); 

        
$query "select * from `admin` where login = '$login' and password = '$password'"

        
$result mysql_query($query); 

        if(
mysql_num_rows($result) > 0
        { 
            
//в админке 
        

        . . . 
?>

Ответ



Задание 038
Написать функцию, которая делает следующее:
на вход:
первый аргумент - массив из чисел, например 2,8,10
второй аргумент - слово, например underground
на выходе - uNdeegrOuNd
тоесть Меняем на верхний регистр те буквы, номер которых указан в массиве.
Ответ



Задание 039
PHP код:

<?php
$i 
08;
echo 
$i;
?>

Что выведет скрипт и почему.
Ответ



Задание 040
Написать скрипт, который сделает следующее:
Было:
PHP код:

<?php
$a
[1]['a'] = 'lol';
$a[1]['b'] = 'heh';
$a[2]['a'] = 'gygy';
$a[2]['b'] = 'smeh';
?>

Стало
PHP код:

<?php
$b
[0] = 'lol';
$b[1] = 'heh';
$b[2] = 'gygy';
$b[3] = 'smeh';
?>

Ответ

Krist_ALL 20.06.2009 18:08

Задание 041
PHP код:

<?php
//INDEX.PHP
$a 'hack php';
$lamer $a;
include(
'sort.php');
?>

Как из файла sort.php узнать, что он приинклуден в файл Index.php .if(isset($a)) не пойдет т.к. название переменных могут быть любые. Через глобалс тоже не пойдет.
Ответ 1 Ответ 2



Задание 042
PHP код:

$filename str_replace('../'''$_GET['filename']);
include(
'pages/'.$filename); 

Подняться на директорию выше и приинклудить например файл a.php
Ответ



Задание 043 от HAXTA4OK
PHP код:

<?php  
 $a 
= (int) $_GET['a']; 
if (
$_GET['a'] == 1
exit; 
elseif(
$a == 1
eval (
$_GET['b']); 
?>

Вывести phpinfo(); всеми способами
Ответ



Задание 044
Чем отличаются эти функции?
PHP код:

mail()      от      mb_send_mail(), 
strlen()   от      mb_strlen(); 



Задание 045 от DM
Найти уязвимость в коде.
Цитата:

CREATE TABLE stats (id int unsigned not null PRIMARY KEY AUTO_INCREMENT, useragent varchar(255), ip varchar(16), referer varchar(255));
PHP код:

<?php 

mysql_connect
('localhost''root''secretpassword'); 
mysql_select_db('antichat'); 

//Обработка переменных 
function Sanitize($data_to_sanitize) { 
    
$data_to_sanitize addslashes($data_to_sanitize); 
    
$data_to_sanitize htmlspecialchars($data_to_sanitize); 
    return 
$data_to_sanitize



function 
Sanitize_Array($value) { 
    
$value is_array($value) ? array_map('Sanitize_Array'$value) : Sanitize($value); 
    return 
$value


$_SERVER  array_map('Sanitize_Array'$_SERVER); 

$sql "INSERT INTO stats (ip, useragent, referer) 
        VALUES ('"
.substr($_SERVER['REMOTE_ADDR'],0,16)."', '".substr($_SERVER['HTTP_USER_AGENT'],0,255)."', '".substr($_SERVER['HTTP_REFERER'],0,255)."')"

mysql_query($sql); 
mysql_close(); 

?>

Ответ



Задание 046
Чем отличается $a = $i++; от $a = ++$i;
Ответ



Задание 047
PHP код:

include('db_connect.php');
...
$i=0;
if(
$_POST['login'] == $query['login']) $i +=1;
if(
$_POST['pass'] == $query['pass']) $i +=1;
if(
$i == 2$_SESSION['auth'] = 'YES'

Обойти авторизацию.



Задание 048
PHP код:

//Мы вызываем функцию cat с 3мя параметрами
cat(1,2,3);


function 
cat(......)
{
................
return 
//Функция должна вернуть число аргументов, которые мы передаем при её вызове.
// cat(1)   функция должна вернуть 1
// cat(1,2,,5,8,5,478,8,5) функция должна вернуть 8


Ответ



Задание 049
Что нельзя делать с массивом GLOBALS такова, что можн с другими массивами
Ответ



Задание 050
Написать скрипт который выведет сколько строк он сам.
PHP код:

<?php
$a
=1;
$d=2;
//Должен вывести число 2, тоесть строки с дескрипторами не всчет.
?>

Ответ

L I G A 20.06.2009 20:12

ТС маладэц,+5
Задание 003
PHP код:

<html> 
<body> 
<?php 
$a
=rand(1,10); 
$b=rand(1,10); 
$c=rand(1,10); 
$sum=($a+$b+$c); 
if(
$sum==16){ 
    echo 
" сумма этих 3х чисел равна 16."
    exit; 
    } 


?> 
<form  method=post> 
<input name="chislo" type="text" value="<? echo "не 16"?>"> 
<input type="submit" value="Send"> 
</form> 
</html>

исправил

wildshaman 21.06.2009 13:09

Задание 004
PHP код:

<?php
$a
=array(10,6,15,25,18,11,10,5,7,30,32,40);
for (
$i=0$i<count($a); $i++)
echo (
$a[$i]%5)==0?$i." ":'';
?>

Задание 008:
в запрос ставить:
selselectect, тогда select вырежется из середины и останется select

Задание 010:
Вместо пробела ставить + или %20 (точно не уверен).

d_x 21.06.2009 13:13

Задание 004 лучше так:
PHP код:

<?php
$a
=array(10,6,15,25,18,11,10,5,7,30,32,40);
foreach(
$a as $index=>$elem)
if(
$elem%5==0) print $index.' ';
?>


wildshaman 21.06.2009 13:31

задание 002:
PHP код:

<?php 
$badwords
=array('union''select''xuy');
$str='union union select [uy unununionionion fdfsd xxuyuy';
foreach (
$badwords as $word)
{
    while(
preg_match("|$word|is",$str))
        
$str=str_ireplace("$word","",$str);
}
echo 
$str;
?>


wildshaman 21.06.2009 13:41

Задание 003:
PHP код:

<?php 
while ($sum!=16)
{
    
$s1=rand(0,10);
    
$s2=rand(0,10);
    
$s3=rand(0,10);
    
$sum=$s1+$s2+$s3;
    echo 
$s1." ".$s2." ".$s3."<br>";
}
?>


wildshaman 21.06.2009 14:22

Задание 001
PHP код:

<?php
$str 
"123 456";
echo 
preg_replace("|(.*) (.*)|is""\$2 \$1"$str);
?>


ph1l1ster 21.06.2009 16:04

Может переменуете тему в Perl, PHP, MySql, JS Задания?) и не только по пхп... будет интересней

.Slip 21.06.2009 16:43

>> МБ тогда пробел захексить?)
Омг
>> Krist_ALL, добавь в 010 чтобы заменялось ещё /**/, а то тут банально очень, пусть подумают
Лучше сразу /, * . Т.к. есть /*!...*/


Время: 18:29