Avatar billede Slettet bruger
03. februar 2006 - 11:51 Der er 8 kommentarer og
1 løsning

Tjek om brugeren har ansøgt om venskab før

Hej

Jeg er ved at lave en venskabs system

Min kode ser sådan er ud

<?
include('../database_connect.php'); // connecter til databasen

//////
if ($_GET['friend'] == 'application') {
    mysql_query("INSERT INTO friends VALUES ('".$_GET['userID']."','".$_GET['friend_userID']."','waiting')") or die(mysql_error());
    mysql_query("INSERT INTO friends VALUES ('".$_GET['friend_userID']."','".$_GET['userID']."','waiting')") or die(mysql_error());
   
    header("Location: ./?mode=view_profile&userID=1");
}
?>
jeg vil gerne have når man trykker på "Ansøg om venskab" som linker hen til
"includes/database/friends.php?friend=application&userID=1&friend_userID=1"

så skal den tjekke om userID og friend_userID allerede er i databasen

Hvordan gør man det nemmest ?
Avatar billede udvikler Nybegynder
03. februar 2006 - 11:58 #1
<?php
$q = mysql_query("SELECT * FROM friends WHERE blabla") or die(mysql_error());
$resultat = mysql_num_rows($q);

if($resultat > 0) {
//brugeren har ansøgt
}else{
//brugeren har ikke ansøgt
}
?>

der hvor jeg har skrevet blabla skal du bare slette og skrive det du vil tjekke på. Jeg ved jo ikke hvad de forskellige variabler hedder.
Avatar billede Slettet bruger
03. februar 2006 - 12:05 #2
Hmm jeg kan ikke rigtigt få det til at virke.

hmm. felterne hedder

userID, friend_userID og status
Avatar billede udvikler Nybegynder
03. februar 2006 - 12:12 #3
fortæl hvad felterne indeholder..

mit umiddelbare gæt ville være at userID indeholder det id på det brugernavn man er logget ind som. friend_userID er id'et på den bruger som man har ansøgt, og jeg har ingen anelse om hvad status indeholder
Avatar billede Slettet bruger
03. februar 2006 - 12:14 #4
det er rigtigt hvad du siger. status er om brugeren er accepted, blocked, waiting såh
Avatar billede udvikler Nybegynder
03. februar 2006 - 12:19 #5
ok, så er det jo ikke så svært..

<?php
$bruger = $_SESSION['brugernavn'];
$ven = $den_variabel_som_indeholder_brugernavnet_på_den_bruger_man_ansøger_om_venskab;

$q = mysql_query("SELECT * FROM friends WHERE userID = '$bruger' AND friend_userID = '$ven'") or die(mysql_error());
$resultat = mysql_num_rows($q);

if($resultat > 0) {
//brugeren har ansøgt
}else{
//brugeren har ikke ansøgt
}
?>
Avatar billede Slettet bruger
03. februar 2006 - 12:31 #6
jeg kan ikke lige få det til at virke helt.

<?
include('../database_connect.php'); // connecter til databasen
//////
if ($_GET['friend'] == 'application') {

$sql = mysql_query("SELECT * FROM friends WHERE userID = '".$_GET['userID']."' AND friend_userID = '".$_GET['friend_userID']."'") or die(mysql_error());
$resultat = mysql_num_rows($sql);

if($resultat > 0) {
//brugeren har ansøgt
    mysql_query("INSERT INTO friends VALUES ('".$_GET['userID']."','".$_GET['friend_userID']."','waiting')") or die(mysql_error());
    mysql_query("INSERT INTO friends VALUES ('".$_GET['friend_userID']."','".$_GET['userID']."','waiting')") or die(mysql_error());
    echo "fuldført";
}else{
//brugeren har ikke ansøgt
echo "Du kan ikke ansøge mere end en gang";
}
}
?>

Hvor er fejlen i den der ?

Den skal fx. tjekke om userID=1 har ansøgt friend_userID=3 før men den skal se om der er noget felt der lige nøjagtig hedder userID=1 og friend_userID=3 fordi hvis den kun tjekker om. der er nogen der hedder UserID=1 i feltet userID finder den nok nogle stykker da, UserID måske os er ven med nogle andre.
Avatar billede Slettet bruger
03. februar 2006 - 14:05 #7
Ikk nogen der kunne hjælpe`?
Avatar billede cronaldo Nybegynder
04. februar 2006 - 00:43 #8
<?
include('../database_connect.php'); // connecter til databasen
//////
$friend = $_GET['friend'];
if ($friend == "application") {

$userid = $_GET['userID'];
$frienduserid = $_GET['friend_userID'];

$foresp = mysql_query("SELECT * FROM friends WHERE userID = \"$userid\" AND friend_userID = \"$frienduserid\" LIMIT 1") or die(mysql_error());
$resultat = mysql_num_rows($foresp);

if($resultat != "1") {
//Denne bruger har ansøgt.
    mysql_query("INSERT INTO friends (userID, friend_userID, status) VALUES ('$userid','$frienduserid','waiting')") or die(mysql_error());
    mysql_query("INSERT INTO friends (friend_userID, userID, status)VALUES ('".$_GET['friend_userID']."','".$_GET['userID']."','waiting')") or die(mysql_error());
    echo "fuldført";
} else {
//Denne bruger har endnu ikke ansøgt.
    echo "Du kan ikke ansøge mere end en gang";
}
}
?>
Avatar billede Slettet bruger
05. februar 2006 - 09:57 #9
Det virkede : D!! Tak : D
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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

Seneste spørgsmål Seneste aktivitet
19 min siden Libre Office Impress Af Frank i Andre styresystemer
I dag 11:47 VB script Af Jenshentze i Word
I dag 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel