Avatar billede net-city Nybegynder
20. januar 2005 - 22:02 Der er 14 kommentarer og
1 løsning

Hvis lfelt og tfelt er det samme så skal den .

Hej eksperter.
Jeg vil gerne have hjælp til et system, som gør man ikke kan have det samme tfelt og lfelt i databasen med "brugere", hvordan gøre dette?

1) Den skal hente alt fra "brugere".
2) Så skal den sige hvis $row[tfelt] og $row[lfelt] allerede er i brug så skal den sige "Hejsa" hvis ikke den er i brug skal den sige "Hejsa 2"

Har prøvet mig frem men virker ikke.

!-)
Avatar billede ellebaek Nybegynder
20. januar 2005 - 22:07 #1
$query = "SELECT tfelt, lfelt FROM brugere"
$result = mysql_query($query)

while ($row = mysql_fetch_array($result)) {
if(trim($row[0]) == trim($row[1])) {
echo "Hejsa";
}
else{
echo "Hejsa 2";
}
}

sådan her løber den alle rækkerne igennem og chekker om de er det samme..
Er det det du gerne vil eller ..?
Avatar billede net-city Nybegynder
20. januar 2005 - 22:26 #2
Den skal tjekke om $_SESSION[brugernavn] står på et felt som er i brug.
Ikke alle sammen.
Avatar billede net-city Nybegynder
20. januar 2005 - 22:29 #3
..
Hvor får du
if(trim($row[0]) == trim($row[1])) {
$row[0] og $row[1] fra?
Avatar billede net-city Nybegynder
20. januar 2005 - 22:33 #4
altså.
på dansk:
(hvis $lfelt er det samme som $lfelt og $tfelt er det samme som $tfelt) {
så skal den give:
optaget.
hvis ikke
"ikke optaget"
Avatar billede net-city Nybegynder
20. januar 2005 - 22:33 #5
Lavede:

<?php
$db = "db.php";
include($db);
$query = mysql_query("SELECT tfelt, lfelt FROM naturechat_brugere WHERE online ='ja'");

while ($row = mysql_fetch_array($query)) {
if(trim($row[lfelt]) == trim($row[lfelt])) {
echo "Optaget.<br />";
}
else{
echo "Ikke optaget<br />";
}
}
?>

Også siger den OPTAGET én gang, selvom man ikke står på en anden figur.
Avatar billede net-city Nybegynder
20. januar 2005 - 22:53 #6
Her kommer mit script, jeg vil have den til at sige.
Hvis lfelt og tfelt allerede er i databasen så skal den give billedet med onclick="ryk.. osv. til return false..


document.write("<div id='felt"+felt_id+"' style='POSITION: absolute;top:"+top_px+"px;left:"+left_px+"px;'>");

document.write("<a ondragstart='return false' onMouseover=document.getElementById('feltet"+felt_id+"').src='felt_over.gif' onMouseout=document.getElementById('feltet"+felt_id+"').src='felt.gif' onclick='ryk("+left_px+","+top_px+","+felt_id+");'>");

document.write("<img border='0' src='felt.gif' width='40' height='60' alt='' id='feltet"+felt_id+"'></a></div>");


feks. Anders står i rummet, også kommer  Kurt og vil stå oven på ham, men det kan han ikke for han står på tfelt = 200 og lfelt= 100 og det gør Anders også, så skal han bare blive stående.
Avatar billede ellebaek Nybegynder
20. januar 2005 - 23:08 #7
okay...

jeg er med:

prøv:
$query = "SELECT * FROM naturechat_brugere nc1 INNER JOIN naturechat_brugere nc2 ON nc1.id = nc2.id WHERE nc1.lfelt = nc2.lfelt AND nc1.tfelt = nc2.tfelt AND nc1.id <> nc2.id"

umiddelbart noget i den her stil..
Kan ikke helt huske syntaxen.
Men det der egentlig sker er at du sammenligner tabellen med sig selv, og så finder rækker der er det samme med forskellige ider..

Så kan du chekke om der står en i forvejen med:

if(mysql_num_rows($result) > 0) {
echo "Optaget";
}
else {
echo "ledigt";
}
Avatar billede net-city Nybegynder
20. januar 2005 - 23:36 #8
Henter med:

<?php
$hent = mysql_query("SELECT * FROM naturechat_brugere nc1 INNER JOIN naturechat_brugere nc2 ON nc1.id = nc2.id WHERE nc1.lfelt = nc2.lfelt AND nc1.tfelt = nc2.tfelt AND nc1.id <> nc2.id");
$row_test = mysql_fetch_array($hent);
?>

Udskriver:

document.write("<div id='felt"+felt_id+"' style='POSITION: absolute;top:"+top_px+"px;left:"+left_px+"px;'>");

document.write("<?php if(mysql_num_rows($hent) > 0) { echo "."; } else { ?><a ondragstart='return false' onMouseover=document.getElementById('feltet"+felt_id+"').src='felt_over.gif' onMouseout=document.getElementById('feltet"+felt_id+"').src='felt.gif'  onclick='ryk("+left_px+","+top_px+","+felt_id+");'><?php } ?>");

document.write("<img border='0' src='felt.gif' width='40' height='60' alt='' id='feltet"+felt_id+"'></a></div>");

Den skulle da gerne give et . hvis det var optaget? - Det gør den ikke.
Avatar billede ellebaek Nybegynder
20. januar 2005 - 23:43 #9
hmm...

altså du vil chekke om en bruger kan rykke hen på et felt før du viser siden...

Så skal du gribe det lidt anderledes an..
Men er ret svært at lure..

Du skal hente alle lfelter og tfelter ud:
<?php
$hent = mysql_query("SELECT lfelt, tfelt FROM naturechat_brugere WHERE online = 'ja'");
?>
og så skal du loope igennem:

while ($row = mysql_fetch_array($hent)) {
//$row[0] = lfelt, $row[1] = tfelt;
if ($row[0] == aktuelt lfelt && $row[1] == aktuelt tfelt) {
echo "optaget";
}
}
Avatar billede haren Nybegynder
21. januar 2005 - 13:25 #10
ellebaek -> Det bliver da nemmere at læse hvis der står:

if ($row[lfelt] == aktuelt lfelt && $row[tfelt] == aktuelt tfelt) {
Avatar billede net-city Nybegynder
21. januar 2005 - 14:05 #11
Vil i ikke sætte det ind her?

document.write("<div id='felt"+felt_id+"' style='POSITION: absolute;top:"+top_px+"px;left:"+left_px+"px;'>");

document.write("<a ondragstart='return false' onMouseover=document.getElementById('feltet"+felt_id+"').src='felt_over.gif' onMouseout=document.getElementById('feltet"+felt_id+"').src='felt.gif'  onclick='ryk("+left_px+","+top_px+","+felt_id+");'>");

document.write("<img border='0' src='felt.gif' width='40' height='60' alt='' id='feltet"+felt_id+"'></a></div>");

Også fortælle mig hvad "aktuelt" felt skal være?
Det jeg står på, eller det andre står på? !-)
Avatar billede net-city Nybegynder
22. januar 2005 - 21:16 #12
.?
Avatar billede haren Nybegynder
23. januar 2005 - 11:43 #13
Jeg undskylder, jeg ved ikke hvordan jeg skal sætte det ind da jeg ikke har nogen som helst forstand på javascript.. :)
Avatar billede net-city Nybegynder
23. januar 2005 - 12:20 #14
Der ved..

while ($row = mysql_fetch_array($hent)) {
//$row[0] = lfelt, $row[1] = tfelt;
if ($row[0] == aktuelt lfelt && $row[1] == aktuelt tfelt) {
echo "optaget";
}
}

Hvor kommer "aktuelt lfelt" og aktuelt tfelt fra?
Avatar billede net-city Nybegynder
24. januar 2005 - 23:00 #15
lukker.
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