Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Skrypt dodajacy wiersz do tabeli
zeetor
post
Post #1





Grupa: Zarejestrowani
Postów: 76
Pomógł: 1
Dołączył: 1.07.2008
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Ludzie,,,mam prosbę może ktoś prawdzić czy ten skrypt jest poprawny?
Baze udało mi sie utworzyc, tabele też ...ale wierszy z danymi dodac do tabeli nie mogę...
Z góry dz i pozdr

  1. <?php
  2. $connection = @mysql_connect('localhost', 'root', 'plazma')
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error()); 
  4.  
  5. echo "Udało się połączyć z serwerem!<br />";
  6.  
  7. $db = @mysql_select_db('player', $connection) 
  8. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error()); 
  9.  
  10. echo "Udało się połączyć z bazą dancych!";
  11.  
  12. $zapytanie = "INSERT INTO `indy` (`id`, `nazwisko`, `imie`, `lata` , `liczba`) VALUES ('', 'Kowalski', 'Jan', '32', '111')";
  13.  
  14. $idzapytania = mysql_query($zapytanie);
  15.  
  16.  
  17. mysql_close($connection);
  18.  
  19. ?>
Powód edycji: dodałem bbcode (cysiaczek)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
k_@_m_i_l
post
Post #2





Grupa: Zarejestrowani
Postów: 349
Pomógł: 72
Dołączył: 22.01.2008
Skąd: Wadowice/Oświęcim

Ostrzeżenie: (0%)
-----


Następny.Nie wiesz do czego służa znaczniki php przy wstawianiu postu questionmark.gif Następnym razem naucz się kożystać z tego.
Po pierwsze to miejsce gdzie wpisujesz rekord do bazy spróbuj tak :
  1. <?php
  2. $zapytanie = &#092;"INSERT INTO `indy` (`id`, `nazwisko`, `imie`, `lata` , `liczba`) VALUES ('NULL', 'Kowalski', 'Jan', '32', '111')\";
  3. ?>

i dodaj mu to :
  1. <?php
  2. $zapytanie = &#092;"INSERT INTO `indy` (`id`, `nazwisko`, `imie`, `lata` , `liczba`) VALUES ('', 'Kowalski', 'Jan', '32', '111')\";
  3.  
  4. $idzapytania = mysql_query($zapytanie) or die('Wystąpił błąd : '.mysql_error());
  5. ?>


i podaj komunikat błędu.

Ten post edytował k_@_m_i_l 6.07.2008, 20:53:28


--------------------
"PHP to człowiek. MySQL to również człowiek."
Go to the top of the page
+Quote Post
mls
post
Post #3





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jeśli pole id posiada flagę auto_increment, wówczas wystarczy:
  1. INSERT INTO `indy` (`nazwisko`, `imie`, `lata` , `liczba`) VALUES ('Kowalski', 'Jan', '32', '111')


Oczywiście zakładając, że wszystkie pola są typu char lub varchar. Dla pól numerycznych nie ma potrzeby stosowania apostrofów/cudzysłowów (ba, jest to nawet zły nawyk bo nie każda baza danych robi konwersję typów pól automatycznie).


--------------------
Go to the top of the page
+Quote Post
zeetor
post
Post #4





Grupa: Zarejestrowani
Postów: 76
Pomógł: 1
Dołączył: 1.07.2008
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Drobne poprawki w kodzie który zapodałeś tzn. cudzysłów z przed INSERT INTO przenisołem przed \ ... i znak \ przed ostatnim cudzysłowem wykasowałem (musiałem to zrobić bo jakieś błędy stale wychodziły)....
...odpaliłem i wyskoczyło:

Udało się połączyć z serwerem!
Udało się połączyć z bazą dancych!
Wystąpił błąd : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\INSERT INTO `indy` (`id`, `nazwisko`, `imie`, `lata` , `liczba`) VALUES ('' at line 1

pozdr
Go to the top of the page
+Quote Post
piotrooo89
post
Post #5


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




czy taka forma zapytanie nie wydaje się bardziej przejrzysta?

  1. <?php
  2. $zapytanie = "INSERT INTO indy SET
  3. nazwisko='Kowalski',
  4. imie='Jan',
  5. lata='32',
  6. liczba='111'";
  7.  
  8. $idzapytania = mysql_query($zapytanie) or die('Wystąpił błąd : '.mysql_error());
  9. ?>


--------------------
Go to the top of the page
+Quote Post
zeetor
post
Post #6





Grupa: Zarejestrowani
Postów: 76
Pomógł: 1
Dołączył: 1.07.2008
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Piotrooo89 napewno taka forma jest bardziej przejżysta, ale mógłby mi kotós powiedzieć dlaczego ten błąd mi wyskakuje...(post wyżej)...
i jak go ewnetualnie wyeliminować (prośzę tylko nie odsyłajcie mnie do angielsko języcznych stronek)...

Może mam coś żle skonfigurowane?questionmark.gif
Wczoraj na przykład po usilnych próbach zapisania wiersza do tabeli... udało mi się...
odczytać szło pienie wszystkie dane...a dziisaj rano włączam kompa...sprawdzam a tabela jest pusta?questionmark.gif

prosze o pomoc

pozdr
Go to the top of the page
+Quote Post
k_@_m_i_l
post
Post #7





Grupa: Zarejestrowani
Postów: 349
Pomógł: 72
Dołączył: 22.01.2008
Skąd: Wadowice/Oświęcim

Ostrzeżenie: (0%)
-----


Pokaż schemat bazy danych,bo z tego błędu wynika że wstawiasz źle dane do bazy.


--------------------
"PHP to człowiek. MySQL to również człowiek."
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 16:15