Проблем с код

DangerM

Registered
Проблема ми е следния опитвам се да направя песен която си качил да можеш сам да я триеш но как ето delete.php трие се но всичко качено от потребителя а на мен ми трябва определената песен
PHP:
<?
include"settings.php";
$user = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM users WHERE username='$user'");
if (! isset($user)) 
{ 
   die('Не сте логнат! <br /><a href="index.php">Върни се в началото</a>'); 
} 
{ 
$id = $_GET['id']; 
if ($id) { 
$sql = "DELETE FROM songs WHERE author='$id'"; 
mysql_query($sql) or die (mysql_error()); 
echo "<meta http-equiv='refresh' content='2; url=myups.php'>Песента е изтрит."; 
} 
else { 
echo "Избери песен за триене."; 
}
} 
?>
 
Заявката трябва да ти е така:

PHP:
 $del=mysql_query("DELETE FROM `tablica` WHERE `from_use`='$user' AND `song_id`='song_id' LIMIT 1") or die (mysql_error());

За целта трябва да вземеш ID-то на песента,която искаш да се изтрие!
 
Код:
<?php
include ("settings.php");
$user = $_SESSION['username'];
if (!isSet($user)) {
   die('Не сте логнат! <br /><a href="index.php">Върни се в началото</a>'); 
} else {
	$id = (int)$_GET['id']; 
	$sql = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE username='$user'"));
	$user_id = $sql['id'];
	if ($id) {
		mysql_query("DELETE FROM `songs` WHERE `author`='$user_id' AND `id`='$id'") or die (mysql_error());
		echo "<meta http-equiv='refresh' content='2; url=myups.php'>Песента е изтрит."; 
	} else { 
		echo "Избери песен за триене."; 
	}
} 
?>

Не ти знам колоните в таблица `songs`, нито в таблица `users` и съм ти ги дал като примерни. /предполагам може и да са така.. :}/
 
Не става пробвах всякак и с name $id но не става единствено с author $id става но трие всички качени песни от потребителя ето
SQL
[sql]CREATE TABLE IF NOT EXISTS `songs` (
`id` int(4) NOT NULL auto_increment,
`name` text NOT NULL,
`author` varchar(255) NOT NULL,
`link` text NOT NULL,
`views` int(10) unsigned NOT NULL,
`downs` text NOT NULL,
`kategoria` varchar(255) character set cp1251 collate cp1251_bulgarian_ci NOT NULL,
`date` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2319 ;[/sql]
 
Във
`author` varchar(255) NOT NULL,

Името на потребителя ли записваш или неговото ID?

Ако е името на потребителя:
PHP:
<?php
include ("settings.php");
if(isSet($_GET['id'])) {
        $songs_id = (int)$_GET['id'];
} else {
        $songs_id = "";
}
if(isSet($_SESSION['username'])) {
        $user = $_SESSION['username'];
} else {
        $user = "";
}
if($user) {
        if(!$id) {
                echo "Изберете песен, която да премахнете!";
        } else {
                $check = mysql_query("SELECT * FROM `songs` WHERE id='$songs_id' AND author = '$user';") or die (mysql_error());
                if (mysql_num_rows($check)<1) {
                        echo"<b>Можеш да махаш само твой песни!</b>";
                } else {
                        mysql_query("DELETE FROM `songs` WHERE id='$songs_id' AND author = '$user';") or die (mysql_error());
                        echo "Песента е изтрита успешно!";
                }
        }
} else {
        echo "Трябва да си влезете в профила!";
}
?>
 
PHP:
<?php
include ("settings.php");
if(isSet($_GET['id'])) {
        $songs_id = (int)$_GET['id'];
} else {
        $songs_id = "";
}
if(isSet($_SESSION['username'])) {
        $user = $_SESSION['username'];
} else {
        $user = "";
}
if($user) {
        if(!$id) {
                echo "Изберете песен, която да премахнете!";
        } else {
                $check = mysql_query("SELECT * FROM `songs` WHERE id='$songs_id' AND author = '$user';") or die (mysql_error());
                if (mysql_num_rows($check)<1) {
                        echo"<b>Можеш да махаш само твой песни!</b>";
                } else {
                        mysql_query("DELETE FROM `songs` WHERE id='$songs_id' AND author = '$user';") or die (mysql_error());
                        echo "Песента е изтрита успешно!";
                }
        }
} else {
        echo "Трябва да си влезете в профила!";
}
?>
 
DangerM каза:
Можеш да махаш само твой песни!

Провери дали ID-то е на този автор , с който се опитваш да премахнеш дадената песен.
 
Провери дали ID-то е на този автор ?

не записва ид на потребител записва на песен
но пробвам да я изтрия от потребителя който я е качил
 

Back
Горе