bossunio
(bossunio)
24 Styczeń 2017 13:10
#1
Witam mam pewien problem na mojej stronie xor.math.uni.lodz.pl/~ach1995 w dziale edytuj studenta.Nie wiem jak zrobić aby czyścił mi ekran z tabelki i zostawił sam formularz, pomoże ktoś ??
Przesyłam kod, oprócz łączenia się z MYSQL
<?php $wynik = mysql_query(“SELECT * FROM studenci”) or die(‘Błąd zapytania’); if(mysql_num_rows($wynik) > 0) { echo “<table cellpadding=“2” border=1 align=“center” bgcolor=“yellow”>”; echo “<tr>”; echo “<td align=“center”>Imie</td>”; echo “<td align=“center”>Drugie Imię</td>”; echo “<td>Nazwisko</td>”; echo “<td align=“center”>Data urodzenia</td>”; echo “<td>Płeć</td>”; echo “<td align=“center”>Liczba ocen</td>”; echo “</tr>”; while($r = mysql_fetch_assoc($wynik)) { echo “<tr>”; echo “<td align=“center”>”.$r[‘imie’]."</td>"; echo “<td align=“center”>”.$r[‘imie_drugie’]."</td>"; echo “<td align=“center”>”.$r[‘nazwisko’]."</td>"; echo “<td align=“center”>”.$r[‘data_ur’]."</td>"; echo “<td align=“center”>”.$r[‘plec’]."</td>"; echo “<td align=“center”>”.$r[‘liczba_ocen’]."</td>"; echo “<td><a href=“index.php?a=edit&id={$r[‘id’]}”>EDIT</a></td>”; echo “</tr>”; } echo “</table>”; } $connection = @mysql_connect (‘localhost’, ‘ach1995’, ‘kokoszka’) ; $db = @mysql_select_db (‘ach1995’, $connection) ; $a = trim($_REQUEST[‘a’]); $id = trim($_GET[‘id’]); if($a == ‘edit’ and !empty($id)) { /* zapytanie do tabeli */ $wynik = mysql_query(“SELECT * FROM studenci WHERE id=’$id’”) or die(‘Błąd zapytania’); if(mysql_num_rows($wynik) > 0) { $r = mysql_fetch_assoc($wynik); echo ‘<form action=“index.php/?edit.php” method=“post”> <input type=“hidden” name=“a” value=“save” /> <input type=“hidden” name=“id” value="’.$id.’" /> Imię:<br /> <input type=“text” name=“imie” value="’.$r[‘imie’].’" /><br /> Drugie imię:<br /> <input type=“text” name=“imie_drugie” value="’.$r[‘imie_drugie’].’" /><br /> Nazwisko:<br /> <input type=“text” name=“nazwisko” value="’.$r[‘nazwisko’].’" /><br /> Data urodzin:<br /> <input type=“text” name=“data_ur” value="’.$r[‘data_ur’].’" /><br /> Płeć:<br /> <input type=“text” name=“plec” value="’.$r[‘plec’].’" /><br /> Liczba ocen:<br /> <input type=“text” name=“liczba_ocen” value="’.$r[‘liczba_ocen’].’" /><br /> <input type=“submit” value=“popraw” /> </form>’; } } elseif($a == ‘save’) { $id = $_POST[‘id’]; $imie = trim($_POST[‘imie’]); $imie_drugie= trim($_POST[‘imie_drugie’]); $nazwisko = trim ($_POST[‘nazwisko’]); $data_ur = trim ($_POST[‘data_ur’]); $plec = trim ($_POST[‘plec’]); $liczba_ocen = trim($_POST[‘liczba_ocen’]); mysql_query(“UPDATE studenci SET imie=’$imie’, imie_drugie=’$imie_drugie’, nazwisko=’$nazwisko’, data_ur=’$data_ur’, plec=’$plec’, liczba_ocen=’$liczba_ocen’ WHERE id=’$id’”) or die(‘Błąd zapytania’); echo ‘Dane zostały zaktualizowane’; } ?>
Aranthor
(Aranthor)
24 Styczeń 2017 18:34
#2
Możesz zamknąć kod odpowiedzialny za rysowanie tabeli wewnątrz instrukcji warunkowej wykonywanej tylko wtedy, gdy w zapytaniu do serwera nie będzie parametru a , który według kodu odpowiada za edycję lub aktualizację danych:
<?php
if (!array_key_exists('a', $_REQUEST)) {
$wynik = mysql_query("SELECT * FROM studenci")
or die('Błąd zapytania');
if(mysql_num_rows($wynik) > 0) {
#tworzenie tabeli...
}
}