Mam taki oto kod stronki:
Wszystko działa... Dodaje do bazy, usuwa, ale jak dam edit to wtedy wyświetlają się pola do edycji-> prawidłowo.
No i tu problem bo po edycji jak dam popraw to powinno poprawić a dodane nowy rekord do bazy.
Jak to zrobić?
Co źle napisane? Gdzie błąd?
<?PHP
ini_set( 'display_errors', 'Off' ); ?>
<form action="index.php" method="post">
Imię:<br />
<input type="text" name="imie" /><br />
Nazwisko: <br />
<input type="text" name="nazwisko" /><br />
E-mail:<br />
<input type="text" name="email" /><br />
<input type="submit" value="dodaj" />
</form>
<?php
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$email = $_POST['email'];
if($imie and $nazwisko and $email) {
or
die('Brak połączenia z serwerem MySQL'); or
die('Nie mogę połączyć się z bazą danych');
$ins = @mysql_query("INSERT INTO uzytkownicy SET imie='$imie', nazwisko='$nazwisko', email='$email'");
if($ins) echo "Rekord został dodany poprawnie"; else echo "Błąd nie udało się dodać nowego rekordu";
}
?>
<hr>
<hr>
<?php
or
die('Brak połączenia z serwerem MySQL'); or
die('Nie mogę połączyć się z bazą danych');
or
die('Błąd zapytania');
echo "<table cellpadding=\"2\" border=1 width=410px>";
echo "<td width=10px>Id</td>"; echo "<td width=100px>Imie</td>"; echo "<td width=100px>Nazwisko</td>"; echo "<td width=100px>E-mail</td>"; echo "<td width=100px>Opcje</td>";
echo "<table cellpadding=\"2\" border=1 width=410px>";
echo "<td width=10px>".$r['id']."</td>"; echo "<td width=100px>".$r['imie']."</td>"; echo "<td width=100px>".$r['nazwisko']."</td>"; echo "<td width=100px>".$r['email']."</td>"; <a href=\"index.php?a=del&id={$r['id']}\">DEL</a>
<a href=\"index.php?a=edit&id={$r['id']}\">EDIT</a>
</td>";
}
}
if($a == 'del' and
!empty($id)) {
echo 'Rekord został usunięty z bazy'; }
$a = trim($_REQUEST['a']);
if($a == 'edit' and
!empty($id)) {
id='$id'")
or
die('Błądd zapytania');
echo '<form action="index.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 />
nazwisko:<br />
<input type="text" name="nazwisko"
value="'.$r['nazwisko'].'" /><br />
e-mail:<br />
<input type="text" name="email"
value="'.$r['email'].'" /><br />
<input type="submit" value="popraw" />
</form>';
}
}
elseif($a == 'save') {
$id = $_POST['id'];
$imie = trim($_POST['imie']); $nazwisko = trim($_POST['nazwisko']); $email = trim($_POST['email']); mysql_query("UPDATE uzytkownicy SET imie = '$imie', nazwisko = '$nazwisko', email = '$email' WHERE id = '$id'") or
die('Błąd zapytania'); echo 'Dane zostały zaktualizowane'; }
?>
Domyślam się że dokładniej tu chodzi o ten kod:
echo '<form action="index.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 />
nazwisko:<br />
<input type="text" name="nazwisko"
value="'.$r['nazwisko'].'" /><br />
e-mail:<br />
<input type="text" name="email"
value="'.$r['email'].'" /><br />
<input type="submit" value="popraw" />
</form>';
}
}
elseif($a == 'save') {
$id = $_POST['id'];
$imie = trim($_POST['imie']); $nazwisko = trim($_POST['nazwisko']); $email = trim($_POST['email']); mysql_query("UPDATE uzytkownicy SET imie = '$imie', nazwisko = '$nazwisko', email = '$email' WHERE id = '$id'") or
die('Błąd zapytania'); echo 'Dane zostały zaktualizowane'; }
Ten post edytował kondziu9516 29.01.2012, 15:27:46