Avatar billede hoell Nybegynder
16. oktober 2003 - 13:47 Der er 4 kommentarer og
1 løsning

Problemmer med flere forms på samme side.

Hej jeg har en side, se den evt. her:
http://www.hoell.dk/vvbk/aktivere_dommer.php

, hvor man skal kunne klikke på "knappen" og så skrive til db og opdatere udløbsdatoen, samt andre stus fra 2 til 1.

dtte havde jeg påtænkt at gøre ved at have den ovenfornævnte side, og så videre sende til en ny side, hvor jeg skrive til db, og sende tilbage med en header. Jeg kan ikke rigtig komme videre til side to, og det frusterer en del!

første side ser sådan her ud!

<?PHP
include 'db.php';
$dagsdato = date("Y-m-d");
$order="";
if (isset($_GET['sortering']))
    {
      $order=" ORDER BY {$_GET['sortering']}";
    }
    $query = "SELECT * FROM vvbkdommere WHERE status = '2' $order";
    $result = mysql_query($query);
        echo '<font size="-7"><table border="0" cellspacing="5">';
        echo '<tr align="center">';
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=dommertype>dommer-<br>type</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=dommerid>dommernr.</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=fornavn>fornavn</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=efternavn>efternavn</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=adresse>adresse</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=postnr>postnr</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=bynavn>bynavn</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=telefon>telefon</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=klub>klub</a></td>";
            echo "<td><a href=".$_GET['PHP_SELF']."?vis=side&sortering=dato>Udløb</a></td>";
            echo '<td><h3>Aktiver</h3></td>';
            echo '<td><h3>Counter</h3></td>';
        echo ' </tr>';

    $taeller = 1;
    while($row = mysql_fetch_array($result))
    {
        echo '<tr align="center">';
        echo '<form action="skriv.aktivere_dommer.php" method="post"></form>';
        echo '<input type="hidden" value="'.$row[autoid].'" name="autoid">';
        echo "    <td>$row[dommertype]</td>";
        echo '    <td>6'.$row[dommertype].'-'.$row[dommerid].'</td>';
        echo '    <td>'.$row[fornavn].'<input type="hidden" value="'.$row[fornavn].'" name="fornavn"></td>';
        echo '    <td>'.$row[efternavn].'<input type="hidden" value="'.$row[efternavn].'" name="efternavn"></td>';
        echo "    <td>$row[adresse]</td>";
        echo "    <td>$row[postnr]</td>";
        echo "    <td>$row[bynavn]</td>";
        echo "    <td>$row[telefon]</td>";
        echo "    <td>$row[klub]</td>";
        echo "    <td>$row[dato]</td>";
        echo '    <td><input type="submit" value="Aktiver" name="submit'.$taeller.'"></td>';
        echo '</form>';
        echo '</tr>';
        $taeller = $taeller + 1;
    }
        echo '</table></font>';
$numrows = mysql_num_rows($result);
echo "<br>Der er d. ".DATE("d/m Y").", $numrows dommere under uddannelse i VVBK<br>";
?>

og side to (skriv.aktivere_dommer.php)

<?PHP
include 'db.php';

$makeDate = mktime(0,0,0,date("m"), date("d"), date("Y")+2);
$newDate = date("Y-m-d",$makeDate);
$autoid = $_POST['autoid'];
$query_update = "UPDATE vvbkdommer WHERE autoid = '$autoid' (status, dato)
                                VALUES ('1', '$newDate')";
$result_update = mysql_query($query_update) or die(mysql_error());
echo $_POST['fornavn'].' '.$row['efternavn'].' er nu opdateret';
/*header("Location: aktivere_dommer.php");*/
?>

Jeg har i første omgang valgt ikke sende tilbage, indtil jeg er sikker på om der skrives til db.

Nogen der har et bud, hvor det går galt?
/Hoell
Avatar billede kimg Nybegynder
16. oktober 2003 - 13:53 #1
$query_update = ("UPDATE vvbkdommer set status='1', dato='newDate' WHERE autoid = '$autoid' )";
Avatar billede kimg Nybegynder
16. oktober 2003 - 13:53 #2
Lille rettelse:

$query_update = ("UPDATE vvbkdommer set status='1', dato='$newDate' WHERE autoid = '$autoid' )";

Kim
Avatar billede hoell Nybegynder
16. oktober 2003 - 14:42 #3
Ja, men kim det kommer jeg jo ikke fra aktivere_dommer.php til skriv.aktivere_dommer.php af. Kan du finde en fejl ved formen??
Avatar billede kimg Nybegynder
16. oktober 2003 - 14:57 #4
Prøv med det her:

while($row = mysql_fetch_array($result))
    {
        echo '<tr align="center">';
        echo '<form action="skriv.aktivere_dommer.php" method="post">';
        echo '<input type="hidden" value="'.$row[autoid].'" name="autoid">';
        echo "    <td>$row[dommertype]</td>";
        echo '    <td>6'.$row[dommertype].'-'.$row[dommerid].'</td>';
        echo '    <td>'.$row[fornavn].'<input type="hidden" value="'.$row[fornavn].'" name="fornavn"></td>';
        echo '    <td>'.$row[efternavn].'<input type="hidden" value="'.$row[efternavn].'" name="efternavn"></td>';
        echo "    <td>$row[adresse]</td>";
        echo "    <td>$row[postnr]</td>";
        echo "    <td>$row[bynavn]</td>";
        echo "    <td>$row[telefon]</td>";
        echo "    <td>$row[klub]</td>";
        echo "    <td>$row[dato]</td>";
        echo '    <td><input type="submit" value="Aktiver" name="submit'.$taeller.'"></td>';
        echo '</form>';
        echo '</tr>';
        $taeller = $taeller + 1;
    }
Avatar billede hoell Nybegynder
16. oktober 2003 - 16:25 #5
Super kim, nu virker det efter jeg lige rettede min update på side to til, så virker det præcist som jeg have forestille mig. Men du har jo ret i at det er underligt, når jeg lige havde lukket form to gang.

Endnu engang super

/Hoell
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester