Передача данных между страницами

aleksey_d

Новичок
у меня тоже есть подобная проблема. Нужно передать странице с проигрывателем на флеше трек из списка путь к которому находится в базе. Для реализации пробую использовать сессии, но почему то скрипт всегда возвращает только трек с последним путем из базы, подскажите в чем проблема...
index.php
PHP:
<?php
error_reporting(E_ALL);
session_start();
//Хост подключения к БД
define('PHP_HOST', 'localhost');
//Пользователь
define('PHP_USER', 'root');
//Пароль
define('PHP_PASS','');
//Базаданных
define('PHP_DB', 'site');
//Префикс таблиц БД
//define('PHP_DBPREFIX', 'php_');
// Подключение к СУБД
$link = mysql_connect(PHP_HOST, PHP_USER, PHP_PASS) or die (mysql_error());
// Выбираем базу данных
mysql_select_db(PHP_DB, $link);
$sql= "SELECT * FROM `downloads`";
// Скармливаем наш запрос MySQL
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
$table = "<table border=1 align=center>\n";	
while ($row = mysql_fetch_assoc($result))
{
	$_SESSION['put'] = $row['dir'];
	$_SESSION['f_name'] = $row['file_name'];
	$_SESSION['n_name'] = $row['name'];	
	$table .= "<tr>\n";   
	$table .= '<td>'.stripslashes($row['file_name']).'-<a href="plaer.php?mp3='.$_SESSION['put'].'">['.stripslashes($row['name']).']</a></td>';
	$table .= "</tr>\n";
}
$table .= "</table>\n";
	echo $table;	
?>
plaer.php здесь осуществляется вывод ссылки на скачивание и проигрывание трека
PHP:
<?
	session_start();
  echo $_SESSION['f_name'];
  echo $row['dir'];
  echo("<br>");
 	
 	echo "<object type='application/x-shockwave-flash' 
 	data='dewplayer-vol.swf?mp3=".$_SESSION['put']."' 
 	width='440' height='50' id='dewplayer-vol'>
	<param name='wmode' value='transparent' />
	<param name='movie' value=".$_SESSION['put']." />
	</object><br>";
	echo "Скачать: ";
	echo '<a href ="'.$_SESSION['put'].'">'.$_SESSION['n_name'].'</a><br>';	
?>
 

Фанат

oncle terrible
Команда форума
Сессии тут не нужны.
PHP:
while ($row = mysql_fetch_assoc($result))
{
    $table .= "<tr>\n";   
    $table .= '<td>'.$row['file_name'].'-<a href="plaer.php?mp3='.$row['id'].'">['.$row['name'].']</a></td>';
    $table .= "</tr>\n";
}
в "plaer".php имя файла будет в $_GET['mp3'], по нему достать имя файла из базы
 

aleksey_d

Новичок
подскажите, а как из $_GET['mp3'] достать имя и путь?
если я меняю в строке
PHP:
$table .= '<td>'.$row['file_name'].'-<a href="plaer.php?mp3='.$row['id'].'">['.$row['name'].']</a></td>';
$row['id'] на $row['dir'] все получается, но выглядит не очень
 

Фанат

oncle terrible
Команда форума
из $_GET['mp3'] надо достать id записи, а по id -путь из базы
 

aleksey_d

Новичок
поспешил с вопросом. сделал так
PHP:
$sql_n = "SELECT * FROM `downloads` WHERE id =".$_GET['mp3'];
верно или нет не уверен, но работает нормально
 

aleksey_d

Новичок
спасибо за помощь, о инъекциях я помню и еще буду заниматься этим вопросом. Если можно то подскажите еще литературу по инъекциям и защите
 
Сверху