Avatar billede Esbjergmus Nybegynder
22. november 2011 - 15:47 Der er 1 løsning

Afslutning på et vennescript i php.

Hej med jer.

Jeg har et problem, er i gang med at afslutte et vennescripts, som gør at den fjerner den ven fra min profil. Men problemet er, den også skal fjerne mig fra den profil jeg vil fjerne.

Altså jeg vil fjerne ID 2, og jeg har id 1, så skal den fjerne id 2 fra min liste, men også fjerne id 1 fra han/hende liste. Så ingen af os har hinanden på listen.

--

<?php
if(isset($_SESSION['community']) && $_SESSION['community'] == "ja"):

print_r($_GET);

$arr = mysql_fetch_array(mysql_query("SELECT `friends` FROM `community` WHERE navn = '".$_SESSION['navn']."'"));
$SessionUserfriends = $arr['friends'];

$SessionUserfriends1 = $_GET['friends'];

print_r($SessionUserfriends);
echo '<br>';
$SessionUserfriends = explode(', ' ,$SessionUserfriends);
$SessionUserfriends1 = explode(', ' ,$SessionUserfriends1);
echo '<br>';
print_r($SessionUserfriends);

echo 'Current friends:';
echo '<br>';
print_r($SessionUserfriends);
echo '<br>';echo '<br>';
echo 'After remove:';
echo '<br>';
$newFriends = array_diff($SessionUserfriends, array($_GET['userID']));
$newFriends1 = array_diff($SessionUserfriends1, array($_SESSION['profilID']));

print_r($newFriends);
echo '<br>';
echo '<br>';
echo '<br>';

echo 'New insert update';
echo '<br>';
$newFriends = implode(', ', $newFriends);
$newFriends1 = implode(', ', $newFriends1);

echo $newFriends;



mysql_query("UPDATE `community` SET `friends` = '$newFriends' WHERE profilID = '".$_GET['profilID']."'");
mysql_query("UPDATE `community` SET `friends` = '$newFriends' WHERE navn = '".$_SESSION['navn']."'");
endif;
?>

Den fjerner vennen fra min liste.
Men ikke fra hans/hendes liste.

Den overstående kode, er forsøgt at få fikset med at fjerne fra hans/hendes profil. Ikke lykkes.

Nedenunder her, er koden som fik lavet til at fjerne vennen fra min profil, indtil jeg også fandt ud af at den også skulle fjerne på hans/hendes.

<?php
if(isset($_SESSION['community']) && $_SESSION['community'] == "ja"):

print_r($_GET);

$arr = mysql_fetch_array(mysql_query("SELECT `friends` FROM `community` WHERE navn = '".$_SESSION['navn']."'"));
$SessionUserfriends = $arr['friends'];

print_r($SessionUserfriends);
echo '<br>';
$SessionUserfriends = explode(', ' ,$SessionUserfriends);
echo '<br>';
print_r($SessionUserfriends);

echo 'Current friends:';
echo '<br>';
print_r($SessionUserfriends);
echo '<br>';echo '<br>';
echo 'After remove:';
echo '<br>';
$newFriends = array_diff($SessionUserfriends, array($_GET['userID']));

print_r($newFriends);
echo '<br>';
echo '<br>';
echo '<br>';

echo 'New insert update';
echo '<br>';
$newFriends = implode(', ', $newFriends);

echo $newFriends;

mysql_query("UPDATE `community` SET `friends` = '$newFriends' WHERE navn = '".$_SESSION['navn']."'");
endif;
?>


Profil er med session $_SESSION[profilID]
Og hentes fra tabel (community).
Og venner bliver updated til "friends" i community.

Så mit problem er kun at få den til at fjerne fra begge profiler.
Min og hans/hendes. Den fjerner på min. Bare ikke den andens :(

Kan i se hvorfor, eller se hvad jeg skal rette?.

På forhånd tak.
Avatar billede Esbjergmus Nybegynder
22. november 2011 - 18:40 #1
Blev løst med:

<?php
if(isset($_SESSION['community']) && $_SESSION['community'] == "ja"):
print_r($_GET);

$arr = mysql_fetch_array(mysql_query("SELECT `friends`,`profilID` FROM `community` WHERE navn = '".$_SESSION['navn']."'"));
$SessionUserfriends = $arr['friends'];

$logget = mysql_query("SELECT * FROM community WHERE profilID='$_GET[userID]'");
while($com = mysql_fetch_array($logget)){
echo "UDSKRIV VENNEID: $com[profilID]<hr />";
$SessionUserfriends1 = $com['friends'];

print_r($SessionUserfriends);
echo '<br>';
$SessionUserfriends = explode(', ' ,$SessionUserfriends);
$SessionUserfriends1 = explode(', ' ,$SessionUserfriends1);
echo '<br>';
print_r($SessionUserfriends);

echo 'Current friends:';
echo '<br>';
print_r($SessionUserfriends);
echo '<br>';echo '<br>';
echo 'After remove:';
echo '<br>';
$newFriends = array_diff($SessionUserfriends, array($_GET['userID']));
$newFriends1 = array_diff($SessionUserfriends1, array($_SESSION['profilID']));

print_r($newFriends);
echo '<br>';
print_r($newFriends1);
echo '<br>';
echo '<br>';

echo 'New insert update';
echo '<br>';
$newFriends = implode(', ', $newFriends);
$newFriends1 = implode(', ', $newFriends1);

echo $newFriends;
echo '<br>';
echo $newFriends1;

mysql_query("UPDATE `community` SET `friends` = '$newFriends1' WHERE profilID = '".$com[profilID]."'");
mysql_query("UPDATE `community` SET `friends` = '$newFriends' WHERE navn = '".$_SESSION['navn']."'");
}
endif;
?>

Det tog mig lige lidt tid om at finde ud af hvordan jeg skulle gøre dette.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester