<?php
// informacje na temat bazy
$host = "localhost"; // nazwa lub numer IP hosta
$user = "........_baza"; // nazwa użytkownika
$password = "........."; // hasło do bazy
$dbName = "........_baza"; // nazwa bazy danych
// te dane zależne są od Twojej bazy i muszą zostać podane
// połączenie i wybór bazy danych
$polacz = mysql_connect($host, $user, $password) or die(mysql_error());
$db = mysql_select_db($dbName, $polacz) or die(mysql_error());
$result = mysql_query("SELECT nazwa_kolumny FROM tabela_testowa ORDER BY id DESC LIMIT 10");
while( $row = mysql_fetch_assoc( $result )) {
$last_id = $row['nazwa_kolumny'];
}
// wprowadzanie do bazy nowego wpisu po wciśnięciu przycisku submit
if (isset($_POST[‘jakies_pole’]) && trim($_POST[‘jakies_pole’]) != ”) {
$jakies_pole = $_POST[‘jakies_pole’];
$sql = "INSERT into tabela_testowa (nazwa_kolumny) VALUES (’$jakies_pole’)";
$rezultat = mysql_query($sql, $polacz) or die(mysql_error());
}
// pobierabie wartości z tabeli "tabela_testowa"
$sql = "SELECT nazwa_kolumny FROM tabela_testowa";
$rezultat = mysql_query($sql, $polacz) or die(mysql_error());
while ($lista = mysql_fetch_array($rezultat)) {
echo $lista[‘nazwa_kolumny’]. "
";
}
// formularz
echo <<
Dodaj wpis:
FORMULARZ;
?>
I nie wiem dlaczego nie mogę za pomocą jego zmienić rekordów w bazie danych.
<?php
// informacje na temat bazy
$host = "localhost"; // nazwa lub numer IP hosta
$user = "........_baza"; // nazwa użytkownika
$password = "........."; // hasło do bazy
$dbName = "........_baza"; // nazwa bazy danych
// te dane zależne są od Twojej bazy i muszą zostać podane
// połączenie i wybór bazy danych
$polacz = mysql_connect($host, $user, $password) or die(mysql_error());
$db = mysql_select_db($dbName, $polacz) or die(mysql_error());
$result = mysql_query("SELECT nazwa_kolumny FROM tabela_testowa ORDER BY id DESC LIMIT 10");
while( $row = mysql_fetch_assoc( $result )) {
$last_id = $row['nazwa_kolumny'];
}
// wprowadzanie do bazy nowego wpisu po wciśnięciu przycisku submit
if (isset($_POST[‘jakies_pole’]) && trim($_POST[‘jakies_pole’]) != ”) {
$jakies_pole = $_POST[‘jakies_pole’];
$sql = "UPDATE tabela_testowa SET nazwa_kolumny = ’$jakies_pole’ WHERE id='1'";
$rezultat = mysql_query($sql, $polacz) or die(mysql_error());
}
// pobierabie wartości z tabeli "tabela_testowa"
$sql = "SELECT nazwa_kolumny FROM tabela_testowa";
$rezultat = mysql_query($sql, $polacz) or die(mysql_error());
while ($lista = mysql_fetch_array($rezultat)) {
echo $lista[‘nazwa_kolumny’]. "
";
}
// formularz
echo <<
Dodaj wpis:
FORMULARZ;
?>
Naucz się rozwiązywać swoje problemy, najlepszy sposób to łopatologia, po:
$sql = "UPDATE tabela_testowa SET nazwa_kolumny = ’$jakies_pole’ WHERE id='1'";
dodajesz:
echo $sql;
wyrzucony string wykonujesz bezpośrednio na bazie danych. Sprawdzasz czy się zmieniło, jeżeli tak to oznacza, że błąd tkwi w skrypcie.
Osobiście stawiam że nie masz rekordu id=‘1’ :twisted: albo wyrzucone na ekran zapytanie jest DOKŁADNIE takie:
a tak na marginesie to nikt nie jest jasnowidzem i cenną informacją byłoby zaprezentowanie tabeli razem z typowaniem
– Dodane 01.01.2012 (N) 20:17 –
jest jeszcze jedno kryterium: zauważ że najpierw wyświetlasz wyniki a dopiero potem je zmieniasz, więc jeżeli bazujesz na danych zaciąganych ze skryptu to może być omylne
Zgadzam się z kolegą powyżej już błąd jest w formularzu,ponieważ danemu id musisz przypisać zmienną i ją wysłać,skąd wiadomo jakie pole ma być zmienione w jakim id.
echo "
potem dopiero zmienną dodać do zapytania do
$sql = "UPDATE tabela_testowa SET nazwa_kolumny = ’$jakies_pole’ WHERE id='$id_pola'";