[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: _GET
lewen2
Есть три файла index.php page1.php page2.php.

index.php
<form method="get" action="page1.php">
<input
type="text" name="search" maxlen="50" />
<input
type="submit" value="Искать" /><br />
</form>


page1.php
<?php
if (isset($_GET['search'])) {$search = $_GET['search'];
}
$pervpage = '<a href=page2.php?search='. $search .'>Перша</a>';
?>


page2.php.

<?php
if (isset($_GET['search'])) {$search = $_GET['search'];
}
echo $search;
?>


Вопрос: почему при передачи с формы в index.php "слово слово слово" в page2.php выводиться только слово.



Спустя 2 минуты, 52 секунды (2.02.2012 - 19:20) bob marley написал(а):
выделяй код php тегами
[php] код [/php]

Спустя 1 минута, 58 секунд (2.02.2012 - 19:22) bob marley написал(а):
Цитата (lewen2 @ 2.02.2012 - 16:17)
Вопрос: почему при передачи с формы в index.php "слово слово слово" в page2.php выводиться только слово.

попробуй передавать с помощью $_POST wink.gif

Спустя 6 минут, 33 секунды (2.02.2012 - 19:28) bob marley написал(а):
А если тебе так хочется get
то проверь что получает в page1.php мне кажется либо туда уже приходит только одно слово или в этом же файле что-то здесь не так:
Цитата (lewen2 @ 2.02.2012 - 16:17)
$pervpage = '<a href=page2.php?search='. $search .'>Перша</a>';


Спустя 7 минут, 57 секунд (2.02.2012 - 19:36) bob marley написал(а):
По любому то что я натворил,можно заменить простой функций,но все же:

<?php
if (isset($_GET['search']))
{$search = $_GET['search'];
$array = explode(' ', $search);
for($i=0;$i<count($array);$i++)
{$url .= $array[$i].'+';}
echo '<a href=page2.php?search='. $url .'>Перша</a>';
}
?>


Повторюсь ещё раз - лучше post
И index.php можно было создать файл index.html там все равно только код html у тебя! ;)
Вообще код не хороший у тебя..не проверок ничего тебе..
Я надеюсь ты просто учишься потому,что куда-то такое выкладывать это кошмар!

Спустя 12 минут, 26 секунд (2.02.2012 - 19:49) Игорь_Vasinsky написал(а):
Цитата
Вопрос: почему при передачи с формы в index.php "слово слово слово" в page2.php выводиться только слово.


:huh: а что в инпут для поиска вводишь?

если ты вводишь "слово"

то page1 формирует ссылку

$pervpage = '<a href=page2.php?search="слово">Перша</a>';


после перехода он передаёт на page2 - "слово"


а ты что ждал? *я люблю твороженые булочки*

Спустя 4 минуты, 49 секунд (2.02.2012 - 19:54) bob marley написал(а):
Игорь_Vasinsky
он имеет виду что сколько бы слов он не ввел,передается только первое в файл page2.php

Спустя 1 минута, 9 секунд (2.02.2012 - 19:55) lewen2 написал(а):
Цитата (Игорь_Vasinsky @ 2.02.2012 - 16:49)
Цитата
Вопрос: почему при передачи с формы в index.php "слово слово слово" в page2.php выводиться только слово.


:huh: а что в инпут для поиска вводишь?

если ты вводишь "слово"

то page1 формирует ссылку

$pervpage = '<a href=page2.php?search="слово">Перша</a>';


после перехода он передаёт на page2 - "слово"


а ты что ждал? *я люблю твороженые булочки*

Вводиться "слово слово слово"

Спустя 1 минута, 33 секунды (2.02.2012 - 19:56) lewen2 написал(а):
Цитата (bob marley @ 2.02.2012 - 16:36)
По любому то что я натворил,можно заменить простой функций,но все же:

<?php
if (isset($_GET['search']))
{$search = $_GET['search'];
$array = explode(' ', $search);
for($i=0;$i<count($array);$i++)
{$url .= $array[$i].'+';}
echo '<a href=page2.php?search='. $url .'>Перша</a>';
}
?>


Повторюсь ещё раз - лучше post
И index.php можно было создать файл index.html там все равно только код html у тебя! ;)
Вообще код не хороший у тебя..не проверок ничего тебе..
Я надеюсь ты просто учишься потому,что куда-то такое выкладывать это кошмар!

Это просто пример. Но немогу понять почему после пробела обрезаеться. Спасибо за функцию, все работает

Спустя 3 минуты, 37 секунд (2.02.2012 - 20:00) bob marley написал(а):
lewen2
после пробела обрезается скорее всего,я так думаю потому,что ты передаешь в page1 с помощью формы,то есть автоматически пробелы меняются на +
потом когда пользуешься тем что передалось опять пробелы..и ты пытаешься сделать ссылку..а на первом пробеле все и остановиться..поэтому я пробелы заменил на + чтобы передать дальше..вообще лучше бы в другой файл передавать с помощью сессии а потом её удалять или с помощью временного файла..
P.S. это не функция wink.gif

Спустя 5 минут, 13 секунд (2.02.2012 - 20:05) alexbel2404 написал(а):
в page1.php

<?php
if (isset($_GET['search'])) {$search = $_GET['search'];
}
$pervpage = '<a href=page2.php?search='. rawurlencode($search) .'>Перша</a>';
?>


в page2.php

<?php
if (isset($_GET['search'])) {$search = $_GET['search'];
}
echo rawurldecode($search);
?>


Попробуй.

Спустя 1 минута, 5 секунд (2.02.2012 - 20:06) Игорь_Vasinsky написал(а):
bob marley
пробелы заменяются на %20 ;)

ТС - обрабатывай $_GET['search']

urldecode($_GET['search']);



должно работать

Спустя 3 минуты, 19 секунд (2.02.2012 - 20:10) bob marley написал(а):
alexbel2404
как я и говорил..на одну функцию biggrin.gif

Спустя 1 минута, 34 секунды (2.02.2012 - 20:11) alexbel2404 написал(а):
Цитата (bob marley @ 2.02.2012 - 21:10)
alexbel2404
как я и говорил..на одну функцию biggrin.gif

если не вижу в постах кода, обычно посты не читаю) поэтому извини))

Спустя 11 минут, 51 секунда (2.02.2012 - 20:23) Игорь_Vasinsky написал(а):
alexbel2404
Цитата
rawurldecode() не декодирует символ сложения ('+') в пробелы. Это делает urldecode().
tongue.gif

Спустя 9 минут, 14 секунд (2.02.2012 - 20:32) alexbel2404 написал(а):
Цитата (Игорь_Vasinsky @ 2.02.2012 - 21:23)
alexbel2404
Цитата
rawurldecode() не декодирует символ сложения ('+') в пробелы. Это делает urldecode().
tongue.gif

unsure.gif

так может у него %20 вместо плюсов )) по моему это зависит от кодировки)

Спустя 23 минуты, 18 секунд (2.02.2012 - 20:55) bob marley написал(а):
Игорь_Vasinsky
alexbel2404
biggrin.gif

Спустя 1 минута, 39 секунд (2.02.2012 - 20:57) bob marley написал(а):
Я жутко тупанул..можно было бы замену проще сделать мне кажется..например str_replace() !а я там на строк 10 накотал biggrin.gif

Спустя 24 минуты, 25 секунд (2.02.2012 - 21:22) Игорь_Vasinsky написал(а):
Цитата
так может у него %20 вместо плюсов )) по моему это зависит от кодировки)


или браузера?

Цитата
Я жутко тупанул..можно было бы замену проще сделать мне кажется..например str_replace() !а я там на строк 10 накотал


чё заменять то?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.