Przekazywany parametr w formularzu

0

Witam,

mam problem otóż skrypt ponizej wyswietla dane z bazy danych oraz po kliknieciu na nazwisko przekierowuje do strony3. Wszystko jest ok, tylko przekazywany jest parametr zawsze pierwszego rekordu ("<form id=\"site3\" action=\"strona3.php?param=$id\"). Rowniz w <input name=\"param1\" type=\"hidden\" value=$id>". przekazywany jest tez $id pierwszego rekordu do kazdego nazwiska. Czy moze mi ktos pomoc

 
<?php        
                $i=0;
                while ($i < $num) {
                    $id=mysql_result($result,$i,"id_prac");
                    $nazwisko=mysql_result($result,$i,"nazwisko");
                    $placa_pod=mysql_result($result,$i,"placa_pod");
                    
                    if($placa_pod > mysql_result($avg, 0)) {
                        echo "<tr class=\"all\"><td class=\"all\">$id</td><td class=\"all\">".
                            "<form id=\"site3\" action=\"strona3.php?param=$id\" method=\"post\">".
                                "<input name=\"inSession\" type=\"hidden\" value=\"2\"/>".
                                "<input name=\"param1\" type=\"hidden\" value=$id>".
                                "<a href=\"javascript: document.forms['site3'].submit();\">$nazwisko</a>" .
                            "</form>".
                            "</td><td class=\"allG\">$placa_pod</td></tr>";
                    } else {
                        echo "<tr class=\"all\"><td class=\"all\">$id</td><td class=\"all\">".
                            "<form id=\"site5\" action=\"strona3.php\" method=\"post\">".
                                "<input name=\"inSession\" type=\"hidden\" value=\"2\"/>".
                                "<input name=\"param1\" type=\"hidden\" value=$id>".
                                "<a href=\"javascript: document.forms['site5'].submit();\">$nazwisko</a>" .
                            "</form>".
                            "</td><td class=\"allR\">$placa_pod</td></tr>";
                    }
                    $i++;
                }
?>
0

$id wysyłasz zarówno w get i w post, ponadto nie cytujesz wartości w value=$id. Mimo wszystko w generowanym html powinna być prawidłowa wartość, obstawiam, że masz zrypany sql.
BTW ten kod jest okropny i do tego zdublowany. Nie wypluwaj html w echo, tylko wyjdź z php i zapisz to po ludzku, a wartości z php wypluj np. przez <?= $id ?>.

0

Dzięki za sugestie. Dopiero się ucze PHP i JavaScript. Zapytanie jest bardzo proste i jest ok ( w normalnym linku dziala). Nie usunalem wysylania metoda GET, poniewaz testowalem. Wychodzi na to, ze po kliknieci na kazdy link ID pracownika jest takie samo. Czyli ten sam param1 dla wszystkich linkow http://localhost:8000/strona3.php?param1=100
Wiesz moze dlaczego tak się dzieje?

1 użytkowników online, w tym zalogowanych: 0, gości: 1