Помогите с GET

Тема в разделе "PHP", создана пользователем vinnipyx, 26 мар 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. vinnipyx

    vinnipyx Создатель

    Регистр.:
    16 май 2007
    Сообщения:
    12
    Симпатии:
    7
    Формирую табличку, имена в таблице являются ссылкой на скрипт -> Перейти по ссылкеname
    Как в script выташить из урла name?

    :bc:

    п.с. использовать формат Перейти по ссылкеname=переменая мне не подходит :confused:
     
  2. Kaimi

    Kaimi

    Регистр.:
    28 окт 2007
    Сообщения:
    257
    Симпатии:
    253
    Поидее так:
    Код:
    $a = $_GET['op'];
    $b = explode("-", $a);
    echo $b[1];
    
     
    vinnipyx нравится это.
  3. Black#FFFFFF

    Black#FFFFFF

    Регистр.:
    19 июл 2007
    Сообщения:
    175
    Симпатии:
    107
    Мда. Прямой путь к инклюдингам через гет.
    Попробуй так:
    url:
    PHP:
    http://domen/?op=1
    PHP:
    function toInt($p){
    $p abs(intval($p)); 
    /*приводим передаваемый параметр к целому положительному числу, и если он больше 0 - возвращаем его из функции, иначе возвращаем false
    */
    return ($p?$p:false);
    }
    $op toInt($_GET['op']);
    if(
    $op){
    /*в цикле switch в зависимости от значения get параметра подключаем нужные файлы - если 1 то подключаешь 1 й если 2 то подключаешь второй ну и так далее */
    switch($op)
    case 
    1:
             require_once 
    'myfile1.php';
             break;
    case 
    2:
             require_once 
    'myfile2.php';
             break;
    default:
             
    forwardPrevPage('Такой страницы не существует!');
             break;
    }
    else {
    forwardPrevPage('Передан неверный параметр.');
    }
    /* если передан неверный параметр то с помощью функции forwardPrevPage отправим человека назад, на ту страницу, с которой он пришел, и выдадим ему сообщение, различное в зависимости от ситуации - параметр $string*/ 

    function forwardPrevPage($string){
    $string addslashes($string);
    $string1 'Ваш браузер не поддерживает яваскрипт. Были допущены следующие ошибки при посещении этой страницы '.$string.' Пожалуйста. Любым, доступным для вас способом, вернитесь на страницу назад. Или сообщите об ошибке администратору (адрес) '

    /* елси не поддерживается яваскрипт, пользователь все равно узнает об ошибке, и сообщит о ней тебе */

    echo($string1);

    die(
    '<head><script type="text/javascript">alert("'.$string.'");window.history.go(-1);</script></head>');
    }
    Ну и совет напоследок. Все таки указывать пути абсолютными к файлам а не относительными.
    PHP:
    require_once 'myfile1.php'//относительный путь
    require_once '../myfile1.php'//относительный путь

    require_once $_SERVER['DOCUMENT_ROOT']'/myfile1.php'//абсолютный путь
    require_once '/var/www/customers/mysite/myfile1.php'//абсолютный путь
             
    И понять разницу между include и require и между require_once и require.
     
    vinnipyx нравится это.
  4. Ton

    Ton Постоялец

    Регистр.:
    20 май 2007
    Сообщения:
    55
    Симпатии:
    9
    Между include и require я сам не понимаю а вот require_once и require Обьясню:
    Если взять require и приинклудить один и тотже файл два раза то на втором инклуде будет Fatal Erorr а если require_once то первый раз принклудится а второй проигнорирует
     
  5. Yaggi Jah

    Yaggi Jah Постоялец

    Регистр.:
    15 ноя 2006
    Сообщения:
    75
    Симпатии:
    31
    Разница между include и require
    include('file.php') - при отсутствии файла file.php отобразит только warning и скрипт продолжит выполнение.
    require же при отсутствии файла file.php вызовет критическую ошибку и скрипт прекратит выполнение.
    _once применяется для единоразового инклюда, т.е. если в тексте скрипта был вызван include_once('file.php') и далее этот инклюд повторится (например в цикле), то он будет проигнорирован.
     
  6. penguen

    penguen

    Регистр.:
    7 янв 2007
    Сообщения:
    823
    Симпатии:
    95
    Как в системе Иксоф через форму в режиме пост закачивать во времен. папку файл =картинку и потом же ее перемещать в задан. спец. дирекорию????
     
  7. masto

    masto Прохожие

    для загрузки файлов используется type="file" у input и enctype="multipart/form-data" у form.
    Файлы и так загружаются во временную директории, затем доступ к ним осуществляется через $_FILES и move_uploaded_file()

    более подробно ответит гугл и _php.net
     
  8. celerons

    celerons Создатель

    Регистр.:
    21 мар 2008
    Сообщения:
    34
    Симпатии:
    0
    POST

    Вдруг понадобиться вариант через POST запрос..

    PHP:
    <html>
    <body>
    <?php

    //---------------------------------MySQL-Настройки----------------------------------->
    $host="...";
    $user="....";
    $pass="....";
    $dbase="....";

    //---------------------------------Другие настройки----------------------------------->
    $error_msg="Ошибка при работа с базой данных.";
    $web="http://muv...";

    @
    mysql_connect($host,$user,$pass) or die ("Невозможно соединиться с базой mysql");
    @
    mysql_select_db($dbase) or die ("Невозможно подключиться к указанной таблице");
    ?>


    <center><H1>Добавление новости</H1>
    <form name="news_add" method="POST" action="news_a.php?op=add">
    <input name="menu_name"><br><br>
    <TEXTAREA name="web_html" id="web_html" rows="25" cols="60"></TEXTAREA><br>

    <input type="submit" value="Сохранить">
    </form>




    <?
    $op = stripslashes($_REQUEST['op']);
    if ($op == add)
    {
     $kod = stripslashes($_POST['web_html']);
     $menu = stripslashes($_POST['menu_name']);
     
     //Выполняем запрос добавления новости!
     
     @mysql_query(' ... '); 
    }
    ?>

    </center>
    </body>
    </html>
     
  9. penguen

    penguen

    Регистр.:
    7 янв 2007
    Сообщения:
    823
    Симпатии:
    95
    Уже сам разобрался. Извеняюсь за беспокойства.
     
  10. max-oligarh

    max-oligarh Постоялец

    Регистр.:
    4 май 2009
    Сообщения:
    68
    Симпатии:
    2
    вообще подобные вещи делать лучше с помошью rewrite
     
Статус темы:
Закрыта.