Kan ikke få til at sende til databasen
Jeg har fået lidt hjælp fra en person. Der desværre ikke har mulighed for at hjælpe mig det næste stykke tid.Derfor spørger jeg jer til råds.
Min hjælp havde ikke tid til at teste systemet.
Jeg har fundet og rettet et par fejl.
Men men nu kan jeg så ikke finde mere selv.
Har ikke selv lavet koden og har derfor svært ved lige at se hvordan jeg kan fejl finde og hvor fejlen evt er.
Jeg har denne side med en udtræk der trækker brugerens 16 spiller ud og en form til at sende dem til en ny database:
test2.php
<?
include('config.php');
$bruger = bruger1;
echo "<form name='form1' method='post' action='test.php'>";
echo "<center><table border='1' class='sample'><tr bgcolor='#000000'><td colspan='5'><center>";
echo "<font color='#FC9801' face='Verdana, Arial, Helvetica, sans-serif'>Dine spillere</font></center></td></tr>";
echo "<tr bgcolor='#222222'><td><center><font color='#FC9801' size='2' face='Verdana, Arial, Helvetica, sans-serif'>Ude</font></center></td>";
echo "<td><center><font color='#FC9801' size='2' face='Verdana, Arial, Helvetica, sans-serif'>Inde</font></center></td>";
echo "<td><center><font color='#FC9801' size='2' face='Verdana, Arial, Helvetica, sans-serif'>Spiller</font></center></td>";
echo "<td><center><font color='#FC9801' size='2' face='Verdana, Arial, Helvetica, sans-serif'>Klub</font></center></td>";
echo "<td><center><font color='#FC9801' size='2' face='Verdana, Arial, Helvetica, sans-serif'>Placering</font></center></td></tr>";
$result = mysql_query("SELECT * from players WHERE bruger = '$bruger' ORDER BY find_in_set(plads, 'GK,F,M,A,T'), navn");
while($row=mysql_fetch_array($result))
{
echo "<tr><td><input type='radio' name='io" .$row['id']. "' value='o' checked='checked'></td><td><input type='radio' name='io" .$row['id']. "' value='i'></td><td>" .$row['navn']. "</td><td>" .$row['klub']. "</td><td>" .$row['plads']. "</td></tr>";
}
echo "</table>";
echo "<center><input type='submit' name='submit' value='Send dit hold'></center></form>";
?>
Så har jeg denne side som skal sende data fra en database til en anden.
Men kun hvis der via radio inputfeltet med value="i", er valgt en af følgende kombinationer i spillernes pladser:
1xGK, 2xF, 4xM, 1xA og 1xT eller
1xGK, 3xF, 3xM, 1xA og 1xT.
Hvis en af de 2 kombinationer er valgt skal alle 16 spiller sendes til databasen, både de 9 med value="i" og de sidste 7 med value="o" i radio felterne.
test.php
<?php
include("config.php");
session_start();
$bruger = Wagner;
$runde = 1;
//Modtag picks:
$selection = array("GK"=>0,"F"=>0,"M"=>0,"A"=>0,"T"=>0);
$players = array();
$result = mysql_query("SELECT * from players WHERE bruger = '$bruger' ORDER BY navn");
while($row=mysql_fetch_array($result)) {
if (!isset($_REQUEST['io'.$row['id']])) exit("Invalid input.");
if ($_REQUEST['io'.$row['id']] == "i") {
$selection[$row['plads']]++;
$players[$row['id']] = $row['id'];
}
//Tests picks::
$ok = false;
$validSelections = array();
$validSelections[] = array("GK"=>1,"F"=>2,"M"=>4,"A"=>1,"T"=>1);
$validSelections[] = array("GK"=>1,"F"=>3,"M"=>3,"A"=>1,"T"=>1);
foreach ($validSelections as $sel) {
$valid = true;
foreach ($sel as $plads => $num) {
if ( $selection[$plads] != $num) $valid = false;
}
if ($valid==true) $ok = true;
}
//Gem
if (!$ok) exit("Ugyldigt valg..");
if ($ok) {
$result = mysql_query("SELECT * from players WHERE bruger = '$bruger'");
while($row=mysql_fetch_array($result)) {
mysql_query("INSERT INTO valg (id, navn, klub, plads, bruger, io, runde) VALUES('".$row['id']."', '".$row['navn']."', '".$row['klub']."', '".$row['plads']."', '".$row['bruger']."', '".(array_key_exist($players, $row['id']) ? 'i' : 'o')."', '$runde')");
}
}
}
echo "Dine valg er gemt";
?>
Mit problem er at selvom jeg vælger den rigtige kombination af spiller skriver den bare "Ugyldigt valg".
Hvis i har spørgsmål så bare spørg. Jeg er MEGA ringe til at forklar ting så det er helt ok.