[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. PHPoozy

    PHPoozy Elder - Старейшина

    Joined:
    1 Jul 2008
    Messages:
    149
    Likes Received:
    31
    Reputations:
    -22
    Code:
    <?php 
    $NAME = isset($_POST['Name']) ? $_POST['Name'] : "";
    
    if($_POST['act'])
    { 
    if($NAME){
    echo "Вас зовут, $NAME";
    }else{
    ?>
    <html> 
    <head> 
    <title> Проверка формуляра </title> 
    </head> 
    <body> 
    <center> 
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> 
    <input type="text" size="10" name="Name"> 
    <input type="submit" name="act" value="запрос!"> 
    </form>
     </center> 
    </body> 
    </html>
    <?php
    }
    }
    ?>
     
    #3821 PHPoozy, 2 Jul 2008
    Last edited: 3 Jul 2008
  2. Chaak

    Chaak Elder - Старейшина

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    Кто нибудь может предложить чтонибудь попроще, или привести конкретный, работающий пример?
     
  3. PHPoozy

    PHPoozy Elder - Старейшина

    Joined:
    1 Jul 2008
    Messages:
    149
    Likes Received:
    31
    Reputations:
    -22
    смотрим вверх =|
     
  4. zythar

    zythar Elder - Старейшина

    Joined:
    16 Feb 2008
    Messages:
    517
    Likes Received:
    109
    Reputations:
    5
    имхо легче сделать так чтобы файл перезаписивался. а чем тебе этот вариант не устраивает?
     
  5. PHPoozy

    PHPoozy Elder - Старейшина

    Joined:
    1 Jul 2008
    Messages:
    149
    Likes Received:
    31
    Reputations:
    -22
    ChaaK через инклуд проще

    include("./class.admin.php");

    после ссылаемся на нужный обжект
     
  6. Chaak

    Chaak Elder - Старейшина

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    у меня этом файле много переменных... да и на производительности сказывается. Поэтому прошу привести готовый пример.
     
  7. pento

    pento Elder - Старейшина

    Joined:
    3 Jul 2006
    Messages:
    126
    Likes Received:
    24
    Reputations:
    -1
    В чем проблема большинство настроек в базу перенести?
     
  8. cash$$$

    cash$$$ Banned

    Joined:
    6 Jan 2008
    Messages:
    385
    Likes Received:
    246
    Reputations:
    10
    Скажу двумя словами ИМХО, можно использовать ссылку (чтобы изменение переменной внутри функции влияло на неё вне функции: function tst(&$secreload), аналог function tst(var secreload); в Pascal) или обычный параметр функции (тогда в теле функции вы работает с копией первоначальной переменной: function tst($secreload)). Ниже подробнее. Вот пример постой функции с одним параметром и с вызовом функции:
    PHP:
    <I> <?php function tst($str// описание функции { echo $str; // эти три строки являются телом функции $str="OK, done"; return $str; } $str="Привет Вам, это сказал я <BR>"; tst($str); echo $str."<BR>"; ?> </I>
     
  9. Gadik

    Gadik Elder - Старейшина

    Joined:
    29 May 2006
    Messages:
    97
    Likes Received:
    19
    Reputations:
    0
    добрый день. Помогите пожалуйста с регулярочкой. пробовал конструктором собрать, не получилось.

    нужно из текста вида:
    вытащить цифру которая стоит перед
     
  10. Jer1cho

    Jer1cho Member

    Joined:
    6 Jun 2008
    Messages:
    212
    Likes Received:
    65
    Reputations:
    10
    PHP:
    <?php 
    $text 
    'd>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25044&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20'
    ;

    $regexp "#id=([^\"]+)&amp;#";
    preg_match_all($regexp,$text,$m);
    foreach(
    $m[1] as $d) echo $d."<br />";
    ?>
     
  11. Gadik

    Gadik Elder - Старейшина

    Joined:
    29 May 2006
    Messages:
    97
    Likes Received:
    19
    Reputations:
    0
    а если таких цифр в $text будет больше одного, то как обращаться именно к примеру к третьей найденой? $d[3] ???
     
  12. Jer1cho

    Jer1cho Member

    Joined:
    6 Jun 2008
    Messages:
    212
    Likes Received:
    65
    Reputations:
    10
    PHP:
    <?php 
    $text 
    'd>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25044&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20d>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25043&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20d>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25042&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20d>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25041&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20d>03114796&nbsp;</td>
    <td>2007&nbsp;</td>
    <td>&nbsp;</td>
    <td>
    <a href="ua/report?id=25040&amp;p=1">Переглянути</a>
    </td>
    </tr>
    <tr>
    <td>03.07.20'
    ;

    $regexp "#id=([^\"]+)&amp;#";
    preg_match_all($regexp,$text,$m);
    echo 
    $m[1][2];
    ?>
    ....
     
    1 person likes this.
  13. PHPoozy

    PHPoozy Elder - Старейшина

    Joined:
    1 Jul 2008
    Messages:
    149
    Likes Received:
    31
    Reputations:
    -22
    Gadik все совпадения с регуляркой будут помещены в $m[1]
     
    2 people like this.
  14. Gadik

    Gadik Elder - Старейшина

    Joined:
    29 May 2006
    Messages:
    97
    Likes Received:
    19
    Reputations:
    0
    все, понял. спс, за помощь
     
    1 person likes this.
  15. emik

    emik Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    57
    Likes Received:
    18
    Reputations:
    2

    вообщим тебе нужно просто розбить на 2-х файла. Впринцыпе так показываю во всех учебниках - где ты отодрал этот кусок понять немогу :confused: .

    Файл_1. index.html
    HTML:
    <html> 
    <head> 
    <title> Проверка формуляра </title>
    </head> 
    <body>
     <center>
         
    <form action="script.php" method="post">    
     <input type="text" size="10" name="Name">     
    <input type="submit" value="запрос!">     
    </form>     
    </center>     
    </body>    
     </html>  
    
    Файл_2 script.php

    PHP:

    <?php     
    echo "Вас зовут ".$_POST['Name'];       
    if (!
    $_POST['Name'])          
     { 
         echo 
    "<br>Заполните форму!";
      } 
    ?> 

    это действуэт так:

    в файле index.html находится НТМЛ розметка страницы и форма. Тогда когда ты нажмеш на кнопку "выполнить запрос" исполнится тот файл который записан в параметре action для формы. В даном случаи это

    <FORM ACTION = "script.php">

    далие скиптом в файле script.php нужно получить значение полей формы. Для этого при создании формы мы указали метод POST (
    HTML:
    <FORM METOD = "POST" >
    ) с помощю которого можно получит значение переменных. $_POST['Name']
     
  16. PHPoozy

    PHPoozy Elder - Старейшина

    Joined:
    1 Jul 2008
    Messages:
    149
    Likes Received:
    31
    Reputations:
    -22
    Code:
    function H($text, $key, $encode){
    	$KeyLength = strlen($key);
    	if($encode){ $Sign = -1; }else{ $Sign = 1;}
    	for($i=1; $i < strlen($text); $i++){
    		$ik = (int)($i / $KeyLength) + 1;
    		$text[$i] = chr(ord($text[$i]) + $Sign * ord($key[$ik]));
    	}
    	return $text;
    }
     
    #3836 PHPoozy, 3 Jul 2008
    Last edited: 3 Jul 2008
    1 person likes this.
  17. nbd

    nbd Elder - Старейшина

    Joined:
    27 Oct 2006
    Messages:
    81
    Likes Received:
    26
    Reputations:
    3
    PHP:
    <?php  
    //function H(Text,Key: String; Encode: boolean): String;
    //var
    //  i, KeyLength: integer;
    //  Sign: ShortInt;
    //begin
    // KeyLength:=Length(Key);
    // if Encode then Sign :=-1 else Sign:=1;
    // for i:=1 to Length(Text) do
    //  Text[i]:=chr(ord(Text[i])+Sign*ord(Key[i mod KeyLength+1]));
    //  Result:=Text;
    //end;
    function H($text,$key,$encode) {
    $keylength=strlen($key);
    if (
    $encode) {$sign=-1;} else {$sign=1;}
    $text_len=strlen($text);
    for (
    $i=0;$i<=$text_len;$i++){
    $text[$i]=chr(ord($text[$i])+$sign*ord($key[fmod($i,$keylenght+1)]));}
    return 
    $text;
    }
    ?>
    Найт, выложи суда результат работы функции в Дельфях,

    верни в for $i=0 так правильнее, а вообще трабл может быть и в кодировках браузера.
     
    #3837 nbd, 3 Jul 2008
    Last edited: 3 Jul 2008
  18. cry10010

    cry10010 New Member

    Joined:
    21 May 2008
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Кароче вот такой вот примитивнейший скриптик на вывод изображений:
    PHP:
    <html>
    <head><title>Моя практитка этих... как их... масивов бля )))</title></head>
    <body>
    <table width="100%" align="center" border="1" bgcolor="c7c7c7">
    <tr>
        <td width="50%">
        <p>Получения случайного значения
     из масива с 4-ю значениями и вывода соответсвующей кортинки</p></td>
        <td width="50%">
        <?php
        $masiv
    [0] = "Случайное значение 1";
        
    $masiv[1] = "Случайное значение 2";
        
    $masiv[2] = "Случайное значение 3";
        
    $masiv[3] = "Случайное значение 4";
        
    $pict[0] = "pict\\1.png";
        
    $pict[1] = "pict\\2.png";
        
    $pict[2] = "pict\\3.png";
        
    $pict[3] = "pict\\4.png";
        
    $x rand($min=$max=3);
        echo 
    $masiv[$x]."<br>";
        echo 
    "<img src=\""$pict[$x]."\"><br>";
        
    ?>
        </td>
        </tr>
    </table>
    </body>
    </html>
    Думаю здесь понятно все. Кортинки могут лежать где угодно, просто создается масив содержащий адреса к ним, вместо "Случайное значение" может быть, наприер, комент к картике... Или вызывать определенную функцию... Кароче это уже пох
     
  19. ZET36

    ZET36 Elder - Старейшина

    Joined:
    8 Oct 2007
    Messages:
    250
    Likes Received:
    49
    Reputations:
    0
    Здравствуйте не подскажите как должен выглядить скрипт который перехватывает запросы посылаемые ему со всех портов или с указанного отдельно (и лог сохраняет)
     
    #3839 ZET36, 3 Jul 2008
    Last edited: 3 Jul 2008
  20. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Вопрос по ООП
    Возможен ли вынос описания работы функции из блока самого класса? Пример на C++:
    Code:
    class test
    {
        somefunc();
    };
    
    test::somefunc() { cout << "test" << endl; }
    Вот в php пытаюсь сделать тоже самое, но не выходит. Стало быть обязательно делать описание работы функции в самом блоке?
     
Thread Status:
Not open for further replies.