![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
Mam 2 tabele:
1. Auta (auto_id, auto_marka_id) 2. Marka (marka_id, marka_nazwa) Funkcja edit _auta wyświetla mi poprawnie formularz z id i nazwa marki samochodu, które mogę edytować. jednak gdy kliknę w przycisk akceptuj - (wywolywana jest funkcja post_edit_auta) nie updatuje mi danych ------------------------ ta część działa dobrze: [php:1:1689619966]<?php function edit_auta($auto_id) { echo '<h3><p align="center">Edytuj auto</p></h3>'; $r = mysql_query("SELECT auto_id , marka_nazwa FROM auta, marka WHERE marka.marka_id=auto_marka_id and auta.auto_id = $auto_id") or die("error: auta.php - edit_auta"); $a = mysql_fetch_array($r); echo '<form action="auta.php" method="get">'; echo '<input type="hidden" name="action" value="post_edit">'; echo '<input type="hidden" name="auto_id" value="'.$a["auto_id"].'">'; echo '<table width="320" align="center">'; echo '<tr>'; echo '<td width="60">Marka</td>'; echo '<td width="260"><input type="text" name="marka_nazwa" value="'.$a["marka_nazwa"].'" class="big"></td>'; echo '</tr>'; ?>[/php:1:1689619966] tutaj jest gdzieś błąd: [php:1:1689619966]<?php function post_edit_auta($auto_id) { mysql_query("update auta set auto_id=$auto_id, auto_marka_id = '$auto_marka_id' where marka.marka_id=$auto_id") or die("error: osoby.php - post_edit_player"); return 1; } echo '</table>'; echo '<p align="center"><input type="submit" value="Akceptuj"></p>'; echo '</form>'; echo '<p align="center"><a href="index.php?aaction=auta">Powrót do listy aut</a></p>'; } ?>[/php:1:1689619966] Prosiłbym o pomoc bo nie bardzo wiem jak formułować zapytania jeśli dotyczą 2 róznych powiązanych ze sobą tabel. Poprawione by hwao |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
Przesyłam cały kod odpowiedzialny za powyższy problem:
Tabela auta: auto_id, auto_marka_id Tabela marka: marka_id, marka_nazwa [php:1:2ac70ddb46]<?php <? //funkcja display_auta odpowiada za wyświetlenie aut w komisie //pominąłem <table><tr>żeby nie pisać nieistotnych spraw function display_auta() { $r = mysql_query("SELECT auto_id , marka_nazwa FROM auta, marka WHERE marka.marka_id=auto_marka_id") or die("error: auta.php - display_auta"); for ($i = 0; $i < mysql_num_rows($r); $i++) { $a = mysql_fetch_array($r); echo '<td width="6%">'.($i+1)."</td>"; echo '<td width="18%">'.$a["marka_nazwa"]."</td>"; echo '<td width="50" align="center">'.' <a href="auta.php?action=edit&auto_id='.$a["auto_id"].'">edytuj</a>'."</td>"; } // funkcja edit_auta po kliknięciu w link "edytuj" wyświetla formularz //do edycji marki samochodu (zmienna marka_nazwa) function edit_auta($auto_id) { $r = mysql_query("SELECT auto_id , marka_nazwa FROM auta, marka WHERE marka_id=auto_marka_id and auto_id = $auto_id") or die("error: auta.php - edit_auta"); $a = mysql_fetch_array($r); echo '<form action="auta.php" method="get">'; echo '<input type="hidden" name="action" value="post_edit">'; echo '<input type="hidden" name="auto_id" value="'.$a["auto_id"].'">'; echo '<td width="60">Marka</td>'; echo '<td width="260"><input type="text" name="marka_nazwa" value="'.$a["marka_nazwa"].'" class="big"></td>'; echo '</tr>'; echo '<p align="center"><input type="submit" value="Akceptuj"></p>'; echo '</form>'; } // funkcja post_edit_auta odpowiada za update tabeli auto_id // no i tu własnie nie updaduje mi tabeli:( function post_edit_auta($auto_id, $auto_marka_id) { mysql_query("update auta set auto_marka_id = $auto_marka_id WHERE auto_id=$auto_id ") or die("error: auta.php - post_edit_auta"); return 1; } echo '<h2><p align="center">AUTA W KOMISIE</p></h2>'; connect(); if ($action == "edit") { edit_auta($auto_id); } elseif ($action == "post_edit") { if (post_edit_auta($auto_id, $auto_marka_id )) { display_auta(); } } else { display_auta(); } disconnect(); ?> ?>[/php:1:2ac70ddb46] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 19:16 |