OPGELOST Array Vraag
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
//tekst en select formulier starten
echo"Bepaal dag en uur voor de uitdaging tegen ".$spelernaam." met als manager ".$gebruikersnaam."<br>";
echo"<form method=\"post\" action=\"daaguit.php?uitdager=$uitgedaagd\" >" ?>
DAG:<br>
<select name="dag"> <?php
//bepalen welke dag het vandaag is
$dagen = array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
$vandaag = $dagen[date("w")];
//array dagenbezet aanmaken
$dagenbezet = array("$vandaag");
//zien of je zelf die dag al geen wedstrijden hebt
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=$sql1)
{
/*dagen waarop je al een wedstrijd hebt toevoegen aan de array $dagenbezet */
$dag = $rij1 -> dag ;
array_push($dagenbezet, "$dag");
}
//controleren of de tegenstrever die dag geen wedstrijden heeft
$sql2= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler2id= ".$uitgedaagd." ");
while($rij2=$sql2)
{
/*dagen waarop je tegenstrever een match heeft toevoegen aan array*/
$dag = $rij2 -> dag ;
array_push($dagenbezet, "$dag");
}
/*wanneer maandag bezet is, dus in de array $dagenbezet staat,kan je niet meer uitdagen op maandag */
if(in_array('maandag', $dagenbezet) )
{ //niks
}
else
{
?> <option>maandag</option> <?
}
//zo verder voor dinsdag, woensdag en andere dagen van de week
if(in_array('dinsdag', $dagenbezet) )
{
}
else{
?> <option>dinsdag</option> <?
}
if(in_array('woensdag', $dagenbezet) )
{
}
else{
?> <option>woensdag</option> <?
}
[/code]
Dus de bedoeling van het script is dat je enkel die dagen 'die niet bezet zijn' in het select-formulier komen staan.
Een dag is bezet als:
- jij hebt die dag al een match
- je tegenstrever heeft die dag al een match
- de dag van vandaag is ook bezet, vb. als het maandag is, is maandag bezet. Is het dinsdag, dan is dinsdag al zeker bezet enz.
Probleem is dat als je iemand wilt uitdagen het formulier helemaal leeg is :-s
//tekst en select formulier starten
echo"Bepaal dag en uur voor de uitdaging tegen ".$spelernaam." met als manager ".$gebruikersnaam."<br>";
echo"<form method=\"post\" action=\"daaguit.php?uitdager=$uitgedaagd\" >" ?>
DAG:<br>
<select name="dag"> <?php
//bepalen welke dag het vandaag is
$dagen = array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
$vandaag = $dagen[date("w")];
//array dagenbezet aanmaken
$dagenbezet = array("$vandaag");
//zien of je zelf die dag al geen wedstrijden hebt
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=$sql1)
{
/*dagen waarop je al een wedstrijd hebt toevoegen aan de array $dagenbezet */
$dag = $rij1 -> dag ;
array_push($dagenbezet, "$dag");
}
//controleren of de tegenstrever die dag geen wedstrijden heeft
$sql2= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler2id= ".$uitgedaagd." ");
while($rij2=$sql2)
{
/*dagen waarop je tegenstrever een match heeft toevoegen aan array*/
$dag = $rij2 -> dag ;
array_push($dagenbezet, "$dag");
}
/*wanneer maandag bezet is, dus in de array $dagenbezet staat,kan je niet meer uitdagen op maandag */
if(in_array('maandag', $dagenbezet) )
{ //niks
}
else
{
?> <option>maandag</option> <?
}
//zo verder voor dinsdag, woensdag en andere dagen van de week
if(in_array('dinsdag', $dagenbezet) )
{
}
else{
?> <option>dinsdag</option> <?
}
if(in_array('woensdag', $dagenbezet) )
{
}
else{
?> <option>woensdag</option> <?
}
[/code]
Dus de bedoeling van het script is dat je enkel die dagen 'die niet bezet zijn' in het select-formulier komen staan.
Een dag is bezet als:
- jij hebt die dag al een match
- je tegenstrever heeft die dag al een match
- de dag van vandaag is ook bezet, vb. als het maandag is, is maandag bezet. Is het dinsdag, dan is dinsdag al zeker bezet enz.
Probleem is dat als je iemand wilt uitdagen het formulier helemaal leeg is :-s
Gewijzigd op 01/01/1970 01:00:00 door Michael VDR
hier heb je de dagen in het nederlands in de array zitten, maar date("w"); geeft een engelse naam terug.
edit:
je fetcht de waarde ook niet als je deze uit een query haalt:
Code (php)
1
2
3
4
2
3
4
<?php
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=$sql1)
{?>
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=$sql1)
{?>
moet dan zijn:
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=mysql_fetch_array($sql1))
{
?>
$sql1= mysql_query("SELECT*FROM uitdaging WHERE geaccepteerd =1 AND speler1id = ".$speler1id." ");
while($rij1=mysql_fetch_array($sql1))
{
?>
bovendien snap ik een paar dingen niet helemaal,
eerst zet je een variable zonder "" en daarna met "". Probeer allebei zonder te doen:
<option>dinsdag</option>
kan korter:
<option>dinsdag</option>
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
Alles werkt nu.