Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Aktualizacja rekordów za pomocą $_POST
Forum PHP.pl > Forum > Przedszkole
furionero
Witam.

Od niedawna zacząłem bawić się w PHP i MySQL i mam taki głupi problem. Napisałem sobie (głównie przy pomocy gotowych skryptów) skrypt do edycji rekordów bazy danych. W jednym pliku mam formularz, a w drugim taki oto kod:

  1. <?php
  2. mysql_connect("localhost", "root", "haslo")or die("Nie można nawiązać połączenia z bazą");
  3. mysql_select_db("test")or die("Wystąpił błąd podczas wybierania bazy danych");
  4. $zapytanie = "UPDATE pages SET title = "$_POST['title']" , content = "$_POST['content']" WHERE id = 1";
  5. $idzapytania = mysql_query($zapytanie);
  6.  
  7. ?>


Co zrobiłem źle, bo skrypt mi nie działa jak zamiast np "$_POST['title']" podstawiłem zwykły tekst, to się podmienia, a tak to się pokazuje:

Parse error: syntax error, unexpected T_VARIABLE in H:\xampp\htdocs\test\test\edytowana.php on line 5
lnn
sprboj moze tak:
  1. <?php
  2. $zapytanie = "UPDATE pages SET title = " .$_POST['title']. " , content = " .$_POST['content']. " WHERE id = 1";
  3. $idzapytania = mysql_query($zapytanie);
  4. ?>
furionero
Właśnie znalazłem już wcześniej, że zabrakło mi tych kropeczek, tylko nie wiem czemu mi to wciąż się nie aktualizuje, mimo że wartości są na pewno przekazywane. blinksmiley.gif Jak wpiszę zamiast ".$_POST['title']." jakiś tekst zamknięty w te pojedyncze cudzysłowy ' to się zapisuje dobrze.
Pilsener
O masz - a nie łaska stringi dawać w apostrofy? Podstawy pracy z bazą:

1. ID=9999999 - liczby możemy podawać BEZ apostrofów
2. PSEUDO_TESCIOWEJ = 'penera' - stringi MUSIMY podawać w apostrofach

Najwygodniej tak:
  1. <?php
  2. $zapytanie = "SELECT FROM tabela WHERE costam='$zmienna'";
  3. ?>


Lub tak:
  1. <?php
  2. $zapytanie = 'SELECT FROM tabela WHERE costam=''.$zmienna.''';
  3. ?>
furionero
Problem rozwiązany  guitar.gif . Zrobiłem to tak, że to
  1. <?php
  2. $_POST['title']
  3. ?>
przerobiłem na zmienne
  1. <?php
  2. $title = $_POST['title'];
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.