Задать вопрос
@Kn94234

Как передать переменную js в php?

Файл php. С помощью функции вывожу визуал, в том числе ссылки, по клику на которые, выполняется функция say(this,1). Она передает значение тега value в переменную js text_value, и запускает alert этой переменной.
Однако, мне нужно эту переменную js передать в переменную php. (text_value -это значение нужно для создания ссылки на файл, откуда я подгружаю json данные и скармливаю их в armcharts - создание графиков ).
В конце кода есть такая строчка
$p1= "<script>document.writeln(text_value);</script>";

если вместо text_value подставить число или слово, то $p1 выводится. Соответственно, мне остается только, передать значение локальной переменной из функции say() наружу. Но я пытался по разному - не получилось. Не хватает опыта и знаний. Есть у кого то какие то идеи? Или может даже совершенно другой подход к решению этой задачи?

UPD. Пытался еще через параметры GET и POST, но не получилось. Через форму не хочу - мне нужно чтобы весь код выполнялся в одном файле.

<?
$head->addFile('/components/excel_loader/admin/tmp/ui.css');

$stat_data = $db->query('SELECT id, title, views, statistic, total_views FROM com_page where statistic =1');
$stat_data = $stat_data->fetchAll();

function a_com()
{
global $stat_data, $ourData;
	
 	echo '
		<div id="main">
			<h1>Статистика просмотра страниц</h1>		
		</div>';

	$change="{MAIN_PAGE_CITY}";
	foreach($stat_data as &$iter) {

	$title = str_replace($change,'',$iter['title']);
	
	echo '<br><span><a href="https://xn--63-vlch8au.xn--p1ai/admin/com/statistic/?id='.$iter['id'].'"  
        name=""  value="'.$iter['id'].'" onclick="say(this, 1)">' . $title . '. </a> </span>: '.$iter['total_views'].' просмотр';
	echo $ourData = file_get_contents('stat/'.$iter['id'].'.json');
	 	
	}
}
?>

<script>
function say(element, id) {	
        var text_value = $(element).attr('value');
	alert  (text_value);
	return text_value;
}
</script>

<? $p1= "<script>document.writeln(text_value);</script>"; 
echo $p1;
?>
  • Вопрос задан
  • 735 просмотров
Подписаться 2 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
thoozu
@thoozu
Веб-разработчик
Через форму не хочу - мне нужно чтобы весь код выполнялся в одном файле.

При желании это можно сделать и в одном файле, а так AJAX в помощь
Ответ написан
Digiport
@Digiport
PHP рулит
может через cookie попробовать?
Ответ написан
Комментировать
@oldzas
Может поработать с сессиями ? и сделать это через них.
https://github.com/AlexChittock/JQuery-Session-Plugin
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽