Beste sitedealers,
ik ben bezig met een formulier om standen in te vullen van voetbal, nu wil ik dat hij spelers dmv. ajax uit een database haalt en daarna alles weer in een database zet. Alleen ik krijg het niet voorelkaar.
HTMLCode:<?php include('login.php'); include('config.php'); if($_SERVER['REQUEST_METHOD'] == 'POST') { $SQL = mysql_query("INSERT INTO Uitslag (ID, ThuisTeam, UitTeam, UitslagThuis, UitslagUit, Scheidsrechter, Grensrechter, Overgooiers, Sportiviteit, Spelers, Strafzaken, Opmerkingen, Doelpuntenmakers, Aanvoerder) VALUES ('', '" . $_POST['Spelers'] . "', '" . $_POST['UitTeam'] . "', '" . $_POST['UitslagThuis'] . "', '" . $_POST['UitslagUit'] . "', '" . $_POST['Scheidsrechter'] . "', '" . $_POST['Grensrechter'] . "', '" . $_POST['Overgooiers'] . "', '" . $_POST['Sportiviteit'] . "', '" . $_POST['Spelersas'] . "', '" . $_POST['Strafzaken'] . "', '" . $_POST['Opmerkingen'] . "', '" . $_POST['Doelpuntenmakers'] . "', '" . $_POST['Aanvoerder'] . "')") or die (mysql_error()); header('Refresh: 2; url=wedstrijdformulier.php'); echo "<div id='ok'>"; echo 'Het formulier is succesvol verstuurd.'; echo '</div>'; exit; } $Mysql = mysql_query("SELECT * FROM Teams ORDER BY Teamnaam ASC") or die(mysql_error()); $MYSQL = mysql_query("SELECT * FROM Spelers WHERE Team = '".$Mysql['Teamnaam']."'") or die(mysql_error()); ?>
Ik heb de rest van de input's ertussen uit gehaald.Code:<div id='formulier'> <form action='wedstrijdformulier.php' method='post'> <table> <tr> <td>Thuis Team</td> <td><select name='Spelers' style='width: 270px;' onchange='showSpelers(this.value)' /> <option value='Thuis'>Thuis Team </option> <?php while($Row = mysql_fetch_assoc($Mysql)) { ?> <option name='Spelers' value='<?php echo $Row['ID']; ?>'> <?php echo $Row['Teamnaam']; ?></option> <?php } ?> </select></td> <td><div id='Spelers'><b>De spelers van het Thuis Team</b></div></td> </tr> <td><input type='submit' value='Versturen'></td> </table> </form> </div> <script type="text/javascript"> function showSpelers(str) { if (str=="") { document.getElementById("Spelers").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("Spelers").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","speler.php?s="+str,true); xmlhttp.send(); } </script>
EDIT: http://no.nl/ya7 <- Voorbeeld
- Formulier versturen en spelers ophalen met AJAX
-
17-01-2011, 18:08 #1
- Berichten
- 103
- Lid sinds
- 15 Jaar
Formulier versturen en spelers ophalen met AJAX
Laatst aangepast door Wesley L : 18-01-2011 om 17:15
-
In de schijnwerper
Ik ga stoppen met mijn bedrijf - Domeinnamen en WP plugins zijn nog beschikbaarOverige dealsTe koop webshop shopify officetown. 500 omzet - kantoorartikelen - Bol accountsWebsite te koopErvaren tekstschrijver voor uiteenlopende schrijfklussenFreelance / WerkPsychologisch.be - Sterk - Medisch - Hoog zoekvolumeDomein te koop -
18-01-2011, 12:03 #2
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Ik zou als ik jou was eerst even een stukje gaan lezen over het invoeren en ophalen van data met PHP en SQL. In je eerste script klopt er niet veel van het ophalen van de data op basis van de team naam, je voert weliswaar de query uit om de teams op te halen maar je haalt de resultset nergens op door middel van mysql_fetch_assoc of mysql_fetch_object. Daarnaast haal je altijd het team op waarvan de naam alfabetisch als eerste voorkomt, dat lijkt me ook niet de bedoeling? En als dit wel de bedoeling is moet je dus door de 1e resultset heen loopen om daarmee de data van je 2e query op te halen.
-
18-01-2011, 16:48 #3
- Berichten
- 103
- Lid sinds
- 15 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Beste Joshua,
ik haal de resultset toch op door middel van mysql_fetch_assoc?
<option value='Thuis'>Thuis Team </option> <?php while($Row = mysql_fetch_assoc($Mysql)) { ?>
EDIT: Hij haalt de spelers wel uit de database met AJAX maar hij zet ze er niet opnieuw in.Laatst aangepast door Wesley L : 18-01-2011 om 17:13
-
18-01-2011, 20:42 #4
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Ik zie het al, ik dacht dat je even 2 pagina's plaatste, maar die staan dus beide in 1 file begrijp ik? Leek er even op alsof je na de $Mysql en $MYSQL stopte, maar daar heb ik even niet goed verder gelezen.
Dan is dat in elk geval niet waar natuurlijk wat ik zei :) maar dan begrijp ik alleen helemaal niet wat je precies wilt doen en wat er nu wel al werkt en wat niet.
-
19-01-2011, 15:49 #5
- Berichten
- 103
- Lid sinds
- 15 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Ik zie het al, ik dacht dat je even 2 pagina's plaatste, maar die staan dus beide in 1 file begrijp ik? Leek er even op alsof je na de $Mysql en $MYSQL stopte, maar daar heb ik even niet goed verder gelezen.
Dan is dat in elk geval niet waar natuurlijk wat ik zei :) maar dan begrijp ik alleen helemaal niet wat je precies wilt doen en wat er nu wel al werkt en wat niet.
ja het is allemaal 1 file. En wat ik wil doen is: Ik heb een standenscript gemaakt, nu is de bedoeling dat je een stand kan invullen, dus Team1 tegen Team2 ik heb dmv een option de teams uit een database gehaald.
Nu is de bedoeling dat als ik op Team1 klik dat hij een AJAX scherm laad met alle spelers in Team1 zodat je kan invullen wie er gespeeld heeft, en wie niet.
Alleen als ik daarna alles in een database wil zetten, zet hij de teamnaam en de spelers er niet in.
Ik hoop dat het zo een beetje duidelijk is.
-
19-01-2011, 19:05 #6
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Nou ja, dan zou je als eerste iets moeten maken waardoor je de spelers apart kunt selecteren, bijvoorbeeld de waarde uit de database komma-gescheiden ophalen en ze vervolgens met de ajax splitten op deze komma en vervolgens één voor een met bijvoorbeeld een selectiebox ervoor in de HTML plaatsen. Dan kun je ze een naam geven (<input type="checkbox" name="spelers[]" value="Jan"> bijv) en na het submitten door middel van foreach($_POST['spelers'] as $name) ophalen.
-
20-01-2011, 15:06 #7
- Berichten
- 103
- Lid sinds
- 15 Jaar
Re: Formulier versturen en spelers ophalen met AJAX
Nou ja, dan zou je als eerste iets moeten maken waardoor je de spelers apart kunt selecteren, bijvoorbeeld de waarde uit de database komma-gescheiden ophalen en ze vervolgens met de ajax splitten op deze komma en vervolgens één voor een met bijvoorbeeld een selectiebox ervoor in de HTML plaatsen. Dan kun je ze een naam geven (<input type="checkbox" name="spelers[]" value="Jan"> bijv) en na het submitten door middel van foreach($_POST['spelers'] as $name) ophalen.Laatst aangepast door Wesley L : 22-01-2011 om 08:39 Reden: Automatisch samengevoegd.
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