Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: передача значения переменных из ссылки
 
 автор: Romantiktj   (09.10.2014 в 13:26)   письмо автору
 
 

Имеется 1.php

<?
echo '<a href="javascript:selectSubj(\'' . htmlspecialchars($row['nfile']) . '\')">' . htmlspecialchars($row['nsubj']) . '</a>';
?>

надо передать значение nfile в

2.php

<?
echo nfile;
?>

Как это осуществить

  Ответить  
 
 автор: confirm   (09.10.2014 в 13:35)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 13:26)
 

А зачем здесь javascript? У вас ведь при щелчке по ссылке отвалится все, ибо нужно прерывать нативное действие браузера, то есть:

<?
echo '<a href="javascript:selectSubj(\'' htmlspecialchars($row['nfile']) . '\');return false">


чтобы выполнить функцию selectSubj.

Поэтому вопрос - чего вы хотите, обработать что-то функцией и потом передать серверу, или же просто этот аргумент передать. Если второе, то почему не так:

<?
echo '<a href="2.php?v=\'' htmlspecialchars($row['nfile']) . '\'">' htmlspecialchars($row['nsubj']) . '</a>';


Странно только в качестве значения текст ссылки гонять.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 13:51)   письмо автору
 
   для: confirm   (09.10.2014 в 13:35)
 

Класс работает, и подскажите пожалуйста синтаксис вывода странички :

<?php
echo "http://moisait.com/R/"+ $v + ".htm";
?>

или print что ли использовать, в любом случае не получается, вместо странички значение, исправьте пожалуйста синтаксические ошибки

  Ответить  
 
 автор: confirm   (09.10.2014 в 14:05)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 13:51)
 

Какого вывода, то что получили по первой ссылке "Класс работает"?

Ссылка написанная мною, содержит get-переменную с именем v, значение этой переменной в файле 2.php получают так:

<?
echo htmlspecialchars($_GET['v']);
//или по условию наличия этой переменной,
//если 2.php может просто быть запрошена или иметь другие переменные запроса
if($_GET['v']) {
    echo 
htmlspecialchars($_GET['v']);
}


Или я не понимаю о чем вопрос.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 14:16)   письмо автору
 
   для: confirm   (09.10.2014 в 14:05)
 

Все нормально, то что я хотел получилось вы правильно поняли, значение переменной доходит до 2.php , просто другой вопрос как правильно создать имя файла из полученной переменной и вывести на обзор, то есть надо вывести например на экран файл 55.htm из папки R ,

пишу так

echo 'http://moisait.com/R/'.$v.'.htm';

но видимо где то ошибки

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 14:17)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 14:16)
 

то есть резултат строка :

http://moisait.com/R/'55'.htm

а не сама страничка

  Ответить  
 
 автор: confirm   (09.10.2014 в 14:21)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 14:17)
 

Что значит результат строкой? Показать url запроса?

Кстати, такого url - http://moisait.com/R/'55'.htm , быть не может, может быть http://moisait.com/R/55.htm.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 14:23)   письмо автору
 
   для: confirm   (09.10.2014 в 14:21)
 

вот вот, как это прописать в ECHO или PRINT

echo 'http://moisait.com/R/'.$v.'.htm';
echo 'http://moisait.com/R/'+$v+'.htm';

не работает в обеих вариантах

  Ответить  
 
 автор: confirm   (09.10.2014 в 14:54)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 14:23)
 

Что и как должно работать?

То что вы показываете, это просто вывод строки, причем конкатенация в РНР, это точка, плюс для этого используется в Javascript.

Вывод строки вот так echo 'http://moisait.com/R/'.$v.'.htm';

выдаст http://moisait.com/R/здесь_то_что_содержала_.переменная_v.htm. Все, больше ничего из этого вышибить нельзя, это и вся работа. А вам чего надо? И откуда взялась эта $v, если из моего примера, то должна быть $_GET['v'], если конечно не присвоена $v.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 15:20)   письмо автору
 
   для: confirm   (09.10.2014 в 14:54)
 

надо просто выловить переменную из ссылки и открыть страничку 55.php

типа

$statya='http://moisait.com/R/'.$v.'.htm';

echo file_get_contents($statya);

но у меня не работает

  Ответить  
 
 автор: confirm   (09.10.2014 в 15:57)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 15:20)
 

Переменная в ссылке, это ключ со значением, и этот ключ не вылавливается, а получается так как вам уже показывалось.

Если этот ключ содержит идентификатор (если идентификатор это число, то htmlspecialchars никаким боком не нужен) записи в базе, которая определяет содержимое страницы, значит нужно по этому идентификатору делать запрос и вывод.

Если этот ключ содержит номер статического html-файла, значит нужно проверить наличие такого файла, и если есть то подключить как include "path/".$v.".html";

Если url полученный в переменной $statya, это страница стороннего сайта, то только в этом случае нужна file_get_contents($statya), и не просто так, а с разбором полученного, и только затем вывод.

Вас об этом спрашивают - чего надо то, так что объясняйте что, а то хрен поймешь чего там не работает и по какой причине.

И вообще, может начать с изучения РНР, а не гадания на кофейной гуще?

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 16:11)   письмо автору
 
   для: confirm   (09.10.2014 в 15:57)
 

Пасибки, в точку попали, просто нет времени книги читать , поэтому у добрых людей спрашиваю,
Вот этот вариант тот что нужен : include "path/".$v.".html";

и как теперь вывести на экран страничку esli к примеру $v=10

echo include "R/".$v.".html";

Знаю достал но быстро надо решить

  Ответить  
 
 автор: confirm   (09.10.2014 в 16:20)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 16:11)
 

http://php.net/manual/ru/index.php

Скачивайте, есть на русском, и начинайте изучать. Это не книга, а руководство, а хотите писать что-то, значит изучать придется.

Хоть 10, хоть 20, хоть 30, подключение будет одинаковым - ищется файл с указанным именем (который включает в себя 10, 20 или 30) и подключается, на то и передается параметр с url.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 16:33)   письмо автору
 
   для: confirm   (09.10.2014 в 16:20)
 

Вот так и убегают с форума

  Ответить  
 
 автор: confirm   (09.10.2014 в 16:40)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 16:33)
 

Форум, это не учебное заведение, а помощь тем кто изучает и пишет что-то в рамках изученного. А ответ на вопрос, почему у меня спинка чешется, потом ушки чешутся, потом еще что-то, только сначала может быть предположительный, в коне концов будет закономерный - надо помыться.

Вы хотите чтобы вам по каждой мелочи ответ давали потому как у вас времени нет изучать? Так вряд ли вы такой форум найдете во всей сети.

  Ответить  
 
 автор: Romantiktj   (09.10.2014 в 14:22)   письмо автору
 
   для: Romantiktj   (09.10.2014 в 14:17)
 

Эт я неправильно выразился, хотел сакзать КЛАСС!!!, РАБОТАЕТ!!!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования