Beste scripters,
Ik kom over een stukje code niet helemaal uit, waar ik jullie hulp bij nodig zal hebben.
Ik probeer een aantal teams tegen elkaar te laten strijden zeg maar, en daarvoor wil ik rondes maken. In mijn administratie paneel wil ik die rondes kunnen maken doormiddel van een <select></select> dropdown boxje, waarbij hij de teams die zich hebben aangemeld uit het database haalt.
Er staat dus zeg maar een <td> voor het "Home Team" en het "Opponent Team" ik wil de teams die tegen elkaar laten strijden dus zelf kunnen neerzetten.
Nu heb ik een while laten loopen om elke keer een nieuwe regel aan te maken. Alleen nu het probleem: Ik krijg maar 1 regel met alle teams in 2 select boxjes en ik weet niet hoe ik de data moet verwerken vanwege de name tag.
Om even helderheid te brengen:
Ik heb 2 select boxjes in 1 while waardoor ik niet weet, hoe ik de name tag moet gebruiken want elke name tag moet een andere inhoud hebben, anders weet ik niet hoe ik hem moet verwerken.
Ik heb al een beetje wat geprobeerd dus het kan zijn dat het nogal een rare code zooi is.
Ik hoop dat iemand het begrijpt.PHP Code:
<?php
$query = mysql_query("SELECT * FROM clans_cups WHERE cup_id='".$id."'");
if(mysql_num_rows($query) > 0) {
$row = mysql_fetch_assoc($query);
$query = mysql_query("SELECT * FROM clans WHERE id='".$row['clan_id']."'");
?>
<form method="POST" action="round_1.php?id=<?php echo $id; ?>">
<p>
<table cellspacing="10" style="font-size: 11px;">
<tr>
<td align="left" width="150px">Home team</td>
<td></td>
<td align="center" width="200px">Opponent team</td>
<td>Score</td>
</tr>
<?php
$query = mysql_query("SELECT * FROM clans_cups WHERE cup_id='".$id."'");
$a = 3;
$b = mysql_num_rows($query) + 1;
$row = mysql_fetch_assoc($query);
?>
<tr>
<td align="left">
<select name="<?php echo $aa; ?>">
<?php
$query2 = mysql_query("SELECT * FROM clans_cups WHERE cup_id='".$id."'");
if(mysql_num_rows($query2) > 0) {
while($row2 = mysql_fetch_assoc($query2)) {
$aa = $a + 2;
$query3 = mysql_query("SELECT * FROM clans WHERE id='".$row2['clan_id']."'");
if(mysql_num_rows($query3) == 1) {
$row3 = mysql_fetch_assoc($query3);
echo "<option value='".$row3['id']."'>".$row3['name']."</option>";
}
}
$a++;
}
else {
echo "No clans have signup yet";
}
?> </select>
</td>
<td>vs.</td>
<td align="center">
<select name="<?php echo $bb; ?>">
<?php
$query2 = mysql_query("SELECT * FROM clans_cups WHERE cup_id='".$id."'");
if(mysql_num_rows($query2) > 0) {
while($row2 = mysql_fetch_assoc($query2)) {
$bb = $b + 2;
$query3 = mysql_query("SELECT * FROM clans WHERE id='".$row2['clan_id']."'");
if(mysql_num_rows($query3) == 1) {
$row3 = mysql_fetch_assoc($query3);
echo "<option value='".$row3['id']."'>".$row3['name']."</option>";
}
}
$b++;
}
else {
echo "No clans have signup yet";
}
?>
</select>
- MySQL PHP vraag
-
19-07-2009, 16:48 #1
- Berichten
- 144
- Lid sinds
- 16 Jaar
MySQL PHP vraag
-
-
19-07-2009, 17:48 #2
- Berichten
- 492
- Lid sinds
- 16 Jaar
Na even lezen en doorspitten denk ik te weten wat je bedoeld.
Dus je wilt 2 select boxes i.p.v 1
Zodat elke team in een aparte verschijnt.
Dus haal de SELECT boven en onder aan weg en maak er zoiets iets van.
Code:<?php echo "<select>"; echo "<option value='".$row3['id']."'>".$row3['name']."</option>"; echo "</select>"; ?>
-
19-07-2009, 20:21 #3
- Berichten
- 144
- Lid sinds
- 16 Jaar
Na even lezen en doorspitten denk ik te weten wat je bedoeld.
Dus je wilt 2 select boxes i.p.v 1
Zodat elke team in een aparte verschijnt.
Dus haal de SELECT boven en onder aan weg en maak er zoiets iets van.
Code:<?php echo "<select>"; echo "<option value='".$row3['id']."'>".$row3['name']."</option>"; echo "</select>"; ?>
Ik zal het proberen met plaatjes iets duidelijker te maken:
Plaatje 1.
Zo moet hij er uit komen te zien vanaf de bezoekers kant.
Plaatje 2.
Zo ziet hij er uit en zo moet hij ongeveer ook worden alleen moeten er meerdere van zulke rijen komen.
Plaatje 3.
De dropdown box.
Ik hoop dat dit was helderheid heeft geschonken!
-
21-07-2009, 21:25 #4
- Berichten
- 144
- Lid sinds
- 16 Jaar
Iemand enige oplossingen voor deze problemen?
-
21-07-2009, 22:21 #5
- Berichten
- 169
- Lid sinds
- 17 Jaar
Volgens mij zijn er twee problemen:
1. Je zegt "Nu heb ik een while laten loopen om elke keer een nieuwe regel aan te maken. ". Dit is op basis van bovenstaande code niet correct. Ik zie twee while loops waarmee dus uiteindelijk 1 regel met de twee selectboxjes wordt gemaakt (zoals plaatje 2)
Ofwel: de eerste query bovenaan je code zou ook een while loop moeten worden. Pas dan krijg je meerdere regels.
2. De selectboxjes geef je statische namen $aa en $bb. Dit gaat op die manier inderdaad niet werken, omdat dan elke keer (als je punt 1 oplost) dezelfde namen worden gebruikt.
Je probeert de namen ($aa en $bb) wel te veranderen, maar dat doe je op de verkeerde plek.
<select name="<?php echo $aa; ?>">
en een paar regels verder in de loop: $aa = $a + 2;
Dat moet dus omgedraaid worden: eerst de naam aanpassen (via bijv. $aa++) en daarna de variabele binnen de select tag plaatsen.
-
22-07-2009, 17:25 #6
- Berichten
- 144
- Lid sinds
- 16 Jaar
Bedankt Peter molen,
Er staan 4 teams in het database die zich aangemeld hadden, alleen nu maakt hij 4 rijen in plaats van 2 hoe zou ik dit op kunnen lossen?
-
22-07-2009, 19:41 #7
- Berichten
- 169
- Lid sinds
- 17 Jaar
Hi Boyd,
Ik ben geen wiskundig genie en kan ook niet uit het niets voorspellen hoe jouw site is opgebouwd.
Maar ik heb het idee dat je moet tellen hoeveel teams zich hebben aangemeld en dat moet delen door 2.
Dat is de LIMIT die je moet instellen op je query.
Het lijkt me daarbij handig dat je floor gebruikt bij de deling. Met andere woorden: 5 aanmeldingen / 2 = 2.5
daar de 'floor' van... en je krijgt 2.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic