• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Jak przesłać id które jest zmienną do php

0 głosów
166 wizyt
pytanie zadane 16 sierpnia 2016 w PHP, Symfony, Zend przez Mistrz0000000 Bywalec (2,780 p.)
zamknięte 17 sierpnia 2016 przez Mistrz0000000

Mam taką funckję w php: 

function load_payment_list()
{
    $status = "oczekiwanie";
    $stmt = getDBH()->prepare("SELECT * FROM payments WHERE status=:status");
    $stmt->bindParam(':status', $status, PDO::PARAM_STR);
    $stmt->execute();

    while ($r = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo ' <tr>
            <form action="" method="POST">
            <th name="'.$r['id'].'">'.$r['id'].'</th>
            <th>'.$r['count'].'</th>
            <th>'.$r['price'].' PLN</th>
            <th>'.$r['steamid'].'</th>
            <th><button type="submit" name="accept_payment">Zatwierdz</button></th>
            </form>
            </tr>';
    }
}

i nie wiem jak przesłać te id

<th name="'.$r['id'].'">'.$r['id'].'</th>

po wciśnięciu przycisku do php

komentarz zamknięcia: Naprawione. Zamaist $stmt = getDBH()->prepare("UPDATE payments SET status = :text WHERE id = :id"); miałem $stmt = getDBH()->prepare("UPDATE payments SET status = :text,WHERE id = :id");

3 odpowiedzi

+1 głos
odpowiedź 16 sierpnia 2016 przez maly Nałogowiec (37,290 p.)
<th> to nagłówek tabeli, nie jest elementem dla form.
0 głosów
odpowiedź 16 sierpnia 2016 przez CzikaCarry Szeryf (75,500 p.)
Przed wciśnięciem przycisku te id jeszcze nie istnieje? Jeśli nie, to musisz użyć AJAX'a, aby asynchronicznie przesłać to do skryptu php (asynchronicznie - bez przeładowania strony)
komentarz 16 sierpnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)

no to zrobi#em tak jak powiedziałeś

function load_payment_list()
{
    $status = "oczekiwanie";
    $stmt = getDBH()->prepare("SELECT * FROM payments WHERE status=:status");
    $stmt->bindParam(':status', $status, PDO::PARAM_STR);
    $stmt->execute();
    while ($r = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $id = $r['id'];
        echo ' <tr>
            <form action="" method="POST">
            <th><input type="hidden" name="id" value="'.$r['id'].'">'.$r['id'].'</th>
            <th>'.$r['count'].'</th>
            <th>'.$r['price'].' PLN</th>
            <th>'.$r['steamid'].'</th>
            <th><button type="submit" name="accept_payment">Zatwierdz</button></th>
            </form>
            </tr>';
    }
    if (isset($_POST['accept_payment']))
    {
        $text = 'Zakończone';
        $stmt = getDBH()->prepare("UPDATE payments SET status = :text,WHERE id = :id");
        $stmt->bindParam(':text', $text, PDO::PARAM_STR);
        $stmt->bindParam(':id', $_POST['id'], PDO::PARAM_STR);
        $stmt->execute();
    }
    }

i dalej biała strona po wciśnięciu przycisku

 

komentarz 16 sierpnia 2016 przez writen Nałogowiec (29,200 p.)
A czemu to jest w funkcji?

Robisz to źle.
komentarz 16 sierpnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)
edycja 17 sierpnia 2016 przez Mistrz0000000
Jest w funkcji bo mieszam kod html z php i staram się to ograniczyć do minimum.
komentarz 17 sierpnia 2016 przez CzikaCarry Szeryf (75,500 p.)
A czy ten if się spełnia ?
komentarz 17 sierpnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)

Teraz włożyłem ten if do index.php i działa ale częściowo. Jak dam
echo $_POST['id'] to wyświetla te id, ale jak dam ten kod:

    if (isset($_POST['accept_payment']))
    {
        $text = 'Zakończone';
        $stmt = getDBH()->prepare("UPDATE payments SET status = :text,WHERE id = :id");
        $stmt->bindParam(':text', $text, PDO::PARAM_STR);
        $stmt->bindParam(':id', $_POST['id'], PDO::PARAM_STR);
        $stmt->execute();
    } 

to biała strona po wciśnięciu przycisku.

 

0 głosów
odpowiedź 16 sierpnia 2016 przez writen Nałogowiec (29,200 p.)
Wystarczy, że wsadzisz do tego formularza input typu hidden z wartością tego id.
komentarz 16 sierpnia 2016 przez Mistrz0000000 Bywalec (2,780 p.)
Ale jak to ma wyglądać potem w php to odbieranie ?

$zmienna = $r['id'];, czy jak ?

Podobne pytania

0 głosów
1 odpowiedź 81 wizyt
0 głosów
1 odpowiedź 96 wizyt
pytanie zadane 23 lipca 2016 w PHP, Symfony, Zend przez DawidxD Użytkownik (810 p.)
0 głosów
3 odpowiedzi 103 wizyt
pytanie zadane 13 grudnia 2016 w PHP, Symfony, Zend przez ThePatrykOOO Dyskutant (7,750 p.)
Porady nie od parady
Nie wiesz jak poprawnie zredagować pytanie lub pragniesz poznać którąś z funkcji forum? Odwiedź podstronę Pomoc (FAQ) dostępną w menu pod ikoną apteczki.FAQ

65,642 zapytań

112,267 odpowiedzi

236,889 komentarzy

46,640 pasjonatów

Przeglądających: 151
Pasjonatów: 6 Gości: 145

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...