Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Mysql_problem z Duplicate entry '1' for key 1"
JarekBednarskii
post 20.09.2007, 18:38:56
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 20.09.2007

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


Witam,

Jestem tu nowy więc proszę o nieco wyrozumiałości. Siedzę amatorsko nad php i mysql'em ( tzw. "samoucek"). Mam problem - pracuje z pewną książką i po wpisaniu skryptu ( skrypt rozumiem ale nie wiem gdzie leży błąd) i wywołaniu skryptu w preglądarce mam błąd : " Duplicate entry '1' for key 1". To zapewne z mysql.

a oto skrypt :

  1. <?php
  2. //polaczenie z serwerem mysql
  3. $connect=mysql_connect("localhost","root","jarek") or die ("Sprawdz polaczenie z serwerem");
  4.  
  5. //uaktywnienie odpowiedniej bazy danych
  6. mysql_select_db("moviessite");
  7.  
  8. // wstawianie danych do tabeli "movie"
  9. $insert="INSERT INTO movie (movie_id, movie_name, movie_type, ".
  10. "movie_year, movie_leadactor, movie_director) ".
  11. "VALUES (1, 'Szybcy i Wsciekli', 2, 2002, 2, 3), " .
  12. "( 2, 'Titanic',3, 1998, 6, 4), " .
  13. "( 3,'Katyn', 3, 2007, 4, 5)";
  14. $results=mysql_query($insert) or die(mysql_error());
  15.  
  16. //wstawianie danych do tabeli movietype
  17. $type="INSERT INTO movietype(movietype_id, movietype_label)" .
  18. "VALUES (1, 'Science-fiction'), " .
  19. "(2, 'Dramat'), " .
  20. "(3, 'Przygoda'), " .
  21. "(4, 'Horror'), " .
  22.  "(5, 'Komedia'), " .
  23.  "(6, 'Akcja'), " .
  24.  "(7, 'Obyczajowy'), " .
  25.  "(8, 'Wojenny'), ";
  26. $results=mysql_query($type) or die (mysql_error());
  27.  
  28. //wstawianie danych do tabeli people
  29. $people="INSERT INTO people(people_id, people_fullname, " .
  30. "people_isactor, people_isdirector) " .
  31. "VALUES (1, 'Jim Carrey', 1, 0), " .
  32. "(2, 'Bruce Willys', 1, 0), " .
  33. "(3, 'Steven Spilberg', 0, 1), " .
  34. "(4, 'Kevin Costner', 1, 0), " .
  35. "(5, 'Quantino Tarantino', 0, 1), " .
  36. "(6, 'Mike Judge', 0, 1)";
  37. $results=mysql_query($people) or die (mysql_error());
  38. echo "Dane zostaly wstawione poprawnie!";
  39. ?>


Gdzie tkwi problem. Bardzo proszę o porady. Dziękuję z góry i pozdrawiam
Go to the top of the page
+Quote Post
dr_bonzo
post 20.09.2007, 19:30:45
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Pokaz jeszcze kod SQL tworzacy tabele


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
JarekBednarskii
post 20.09.2007, 19:52:08
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 20.09.2007

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


Tworzenie tych tabel....

<?php
// polaczenie z serwerem MySQL, dla parametrów jaro i hasla kurs
$connect=mysql_connect("localhost", "root", "jarek")or die (mysql_error());

// tworzenie bazy danych jesli nie isnieje
$create=mysql_query("CREATE DATABASE IF NOT EXISTS moviessite") or die (mysql_error());

//wybierz nowo-utworzona baze danych
mysql_select_db("moviessite");

//tworzenie tabli movie
$movie="CREATE TABLE movie (
movie_id int(11) NOT NULL auto_increment,
movie_name varchar(255) NOT NULL,
movie_type tinyint(2) NOT NULL default 0,
movie_year int(4) NOT NULL default 0,
movie_leadactor int(11) NOT NULL default 0,
movie_director int(11) NOT NULL default 0,
PRIMARY KEY (movie_id),
KEY movie_type (movie_type,movie_year)
)";

$results=mysql_query($movie) or die (mysql_error());

//tworzenie tabeli movie_type

$movietype="CREATE TABLE movietype(
movietype_id int(11) NOT NULL auto_increment,
movietype_label varchar(100) NOT NULL,
PRIMARY KEY (movietype_id)
)";

$results=mysql_query($movietype) or die (mysql_error());

//tworzenie tabeli people
$people="CREATE TABLE people(
people_id int(11) NOT NULL auto_increment,
people_fullname varchar(255) NOT NULL,
people_isactor tinyint(1) NOT NULL default 0,
people_isdirector tinyint(1) NOT NULL default 0,
PRIMARY KEY (people_id)
)";

$results=mysql_query($people) or die (mysql_error());
echo "Poprawnie utworzono baze danych filmów!";
?>
Go to the top of the page
+Quote Post
envp
post 20.09.2007, 21:42:48
Post #4





Grupa: Zarejestrowani
Postów: 359
Pomógł: 1
Dołączył: 16.04.2006
Skąd: Łódź

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


skoro id masz autoincrement i pk to dawaj w miejsce id "null" jak wstawiasz...

Btw. wyczyść tabele ;]
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 Wersja Lo-Fi Aktualny czas: 10.06.2024 - 05:02