Jeg sidder og roder lidt med en oversigt over min hjemmesides konkurrencer.
Sådan her skal den fungere:
Hvis man ikke allerede er med i konkurrencen skal den skrive:
CREATE TABLE `getpen7_konkurrence` (
`kid` int(3) unsigned NOT NULL auto_increment, //konkurrencenes id
`ktitel` varchar(20) NOT NULL default '', //konkurrencenes titel
`ktekst` text NOT NULL, //konkurrencenes tekst
`kbillede` varchar(20) NOT NULL default '', //konkurrencenes billede
`kpris` varchar(20) NOT NULL default '', //konkurrencenes pris
PRIMARY KEY (`kid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
CREATE TABLE `getpen7_konkurrencedeltager` (
`id` mediumint(11) unsigned NOT NULL auto_increment,
`kdid` varchar(255) default NULL, //konkurrencenes id
`bruger` varchar(255) default NULL, //brugeren der er med i konkurrencen´s userid.
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
I tabellen getpen7_konkurrence er der alt infomationen omkring konkurrencerne.
I tabellen getpen7_konkurrencedeltager er der en liste over hvem der er med i hvilke konkurrencer.
Så koden skal lave en liste over alle konkurrecer.
Men dem man ikke er med i skal den skrive den første kode jeg kom med.
Og dem man er med i skal den skrive den anden kode jeg kom med.
Håber i forstår det. Ellers bare skriv :)
På forhånd tak for hjælpen :)
Men ellers så har du jo alle informationer i tabellerne. Du ved hvilke konkurrencer der er og du ved om brugeren er med i en konkurrence. Hvis brugeren ikke findes i getpen7_konkurrencedeltager med konkurrencen som reference, så skal deltagknappen vises.
Jeg har programmeret i over 27 år. Jeg har kodet i C, C++, Java, Delphi, Perl, JavaScript, C#, F#, VB.NET, ASP, Myresnak :D, Comal80 osv....
Jeg har også oprette en debat på eksperten.dk men der kommer bare ikke rigtig noget svar.
Så jeg fil en idé og prøve her :)
Altså det skriver det er rigtigt. Men det er bare lige hvordan laver jeg det? jeg har prøvet med IF og lidt forskelligt. men jeg kan ikke få det til og virke :S
Du trækker en liste af alle konkurrencer som Brugeren (B) er med i: ListC
Du kører hele ListA igennem.
For hver post i ListA kører du ListC igennem for at finde konkurrencen. Hvis den findes, så skriver du at man er med i konkurrencen og derefter hoppe ud af ListC løkken. Hvis du kommer helt igennem ListC løkken UDEN at have skrevet noget, så er brugeren ikke med i konkurrencen.
Det vigtige her er at du ikke kalder databasen hver gang du skal køre listen igennem, men at du har dem i et array eller lign.
Jeg har programmeret i over 27 år. Jeg har kodet i C, C++, Java, Delphi, Perl, JavaScript, C#, F#, VB.NET, ASP, Myresnak :D, Comal80 osv....
For i = 0 to ListA.Length IsInKonkurrence = False For j = 0 To ListC.Length If UserId = ListC.UserId then Print "Du er med i konkurrencen" IsInKonkurrence = True End If Next j If Not IsInKonkurrence Then Print "Du er ikke med i konkurrencen" End if Next i
Det burde give dig et billede af hvad jeg mener. Det vigtige her er hvordan du gemmer dine data i ListA og ListC.
Jeg har programmeret i over 27 år. Jeg har kodet i C, C++, Java, Delphi, Perl, JavaScript, C#, F#, VB.NET, ASP, Myresnak :D, Comal80 osv....
Glemte lige og sige det skulle være i php. Du du skrev er det ikke asp? :)
Kan du lave det i php? :)
Nej... jeg skal ikke lave din kode for dig. Jeg har givet dig et rimeligt klart svar på hvordan du kan gøre det. Det er så din opgave nu at lave det så det passer med din kode.
Jeg så godt at det var i php det du skrev først men havde ikke tid/lyst til at sidde og skrive min kode i php. På den måde får du også selv mulighed for at tænke løsningen igennem :)
Jeg har programmeret i over 27 år. Jeg har kodet i C, C++, Java, Delphi, Perl, JavaScript, C#, F#, VB.NET, ASP, Myresnak :D, Comal80 osv....
<? $userid = $userdata["user_id"]; $sql ="SELECT * FROM ".$db_prefix."konkurrencedeltager AS deltager LEFT JOIN ".$db_prefix."konkurrence AS konkurrence ON deltager.kdid=konkurrence.kid WHERE bruger = \"$userid\""; $query = mysql_query($sql) or die(mysql_error()); while($result = mysql_fetch_assoc($query)){ $kdid = $result[kdid]; echo"Du er med i ".$kdid."<br>"; } ?>