In una pagina che dovrebbe stamparmi la lista degli utenti amici dell'utente collegato ho scritto questo codice php:
Ovviamente l'errore è nella richiesta sql, che riscrivo qua:
Il mio database è questo:
http://www.mediafire.com/?j0b4sujt2twja3t
Sono stata ingannata dal fatto che ieri funzionava, ma avevo solo una amicizia con lo stato '1', quindi solo una accettata. Adesso, però, non riesco assolutamente più a richiamare tramite sql l'altro utente (prima di scrivere ho provato sul database ma nisba).
Avete qualche idea di come potrei effettuare la query?
Spero vivamente di non aver sbagliato sezione, vi ringrazio in anticipo per l'aiuto e la pazienza .
Codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?php session_start();
$IDutente = $_SESSION['IDutente'];?>
<HTML>
<HEAD>
<TITLE>Your Friends</TITLE><link href="style.css" rel="stylesheet" type="text/css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<div align="center">
<TABLE class="maintable" CELLPADDING="0" CELLSPACING="0">
<TR>
<TD COLSPAN=3> <IMG SRC="images/index_01.gif" WIDTH=727 HEIGHT=240 ALT=""></TD>
</TR>
<TR>
<TD ROWSPAN=2 class="navbg" valign="top"><div id="nav">
<p><span class="h2">Menu</span> <a href="index.php">Home</a> <a href="rules.php">Rules</a>
<a href="gallery.php">Gallery</a> <a href="upload.php">Upload</a> <a href="search.php">Search</a>
<span class="endbox"></span> </p>
<?php
if ((isset($_SESSION['login']))&&((isset($_SESSION['password'])))){
echo <<<print
<p><span class="h2">Logout</span> <a href="profile.php">Your Profile</a> <a href="logout.php">Logout</a><span class="endbox"></span> </p>
<p><span class="h2">Friendship</span> <a href="users.php">Search user</a> <a href="friend.php">My friends</a> <a href="request.php">Friends request</a> <span class="endbox"></span> </p>
print;
}
else {
echo <<<print
<p><span class="h2">Sign in</span> <a href="create.html">Create account</a> <a href="login.htm">Login</a><span class="endbox"></span>
print;
}
echo <<<print
</p>
</div></TD>
<TD ROWSPAN=2 class="contentbg" valign="top"><div id="content">
print;
?>
<h1>Friend page:</h1>
<h2 align="center">Your friends:</h2>
<?php
include ("connessione.inc");
$sql="SELECT nickname FROM utenti WHERE IDutente = ALL (SELECT Receiver AS amico FROM amicizie WHERE (Sender = '$IDutente') AND (Friend = '1') UNION SELECT Sender AS amico FROM amicizie WHERE (Receiver = '$IDutente') AND (Friend = '1'))";
$res = mysql_query($sql, $conn) or die("Error!".mysql_error());
while ($records = mysql_fetch_assoc($res)){
echo <<<MESS
<a href=\"?page="profile.php?id=$records[nickname]\" title=\"Go to his profile\" id=\"previus\">$records[nickname]</a>
<form action="friend.php" id="delete" method="POST" align="right">
<input type="submit" name="button" value="Delete" class="button"/>
</form>
MESS;
}
//codice del bottone Delete
if (isset($_POST['button'])){
$button=$_POST['button'];
if ($button == "Delete"){
$sql2="DELETE FROM amicizie WHERE (Receiver = '$IDutente' and Sender = '$records[nickname]') or (Sender = '$records[nickname]' and Receiver = '$IDutente')";
$res2=mysql_query($sql2, $conn) or die("Error!".mysql_error());
echo "You and $records[nickname] aren't longer friend.";
}
}
?>
</p>
</p>
</br>
</br>
</br>
</br>
<h1>©SketchMania</h1>
<TD valign="top" class="spacer"></TD>
</TR><TR>
<TD height="2" class="spacer2"></TD>
</TR><TR>
<TD COLSPAN=3 class="creditsbg">
<p>| Contact us <a href="http://yahoo.com/" target="_blank">[email protected]</a> | </p></TD>
</TR>
</TABLE>
</div>
</BODY>
</HTML>
Codice:
SELECT nickname FROM utenti WHERE IDutente = ALL (SELECT Receiver AS amico FROM amicizie WHERE (Sender = '$IDutente') AND (Friend = '1') UNION SELECT Sender AS amico FROM amicizie WHERE (Receiver = '$IDutente') AND (Friend = '1'))
http://www.mediafire.com/?j0b4sujt2twja3t
Sono stata ingannata dal fatto che ieri funzionava, ma avevo solo una amicizia con lo stato '1', quindi solo una accettata. Adesso, però, non riesco assolutamente più a richiamare tramite sql l'altro utente (prima di scrivere ho provato sul database ma nisba).
Avete qualche idea di come potrei effettuare la query?
Spero vivamente di non aver sbagliato sezione, vi ringrazio in anticipo per l'aiuto e la pazienza .