Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> tworzenie z php tabeli i recordów
de_gie
post 31.01.2011, 15:15:42
Post #1





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 1.01.2011

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


Witam serdecznie minowicie mam taki problem ze z poziomu php chcialbym tworzyc tabele i wpisywac dane do niej recordy. o to moj kod
  1. <?php
  2. // nawiazujemy polaczenie
  3. $connection = @mysql_connect('localhost', 'admin_degie', 'xxxxxx')
  4. // w przypadku niepowodznie wyświetlamy komunikat
  5. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  6. // połączenie nawiązane ;-)
  7. echo "Udało się połączyć z serwerem!<br />";
  8. // nawiązujemy połączenie z bazą danych
  9.  
  10.  
  11. $zapytanie = 'CREATE TABLE nba (id int NOT NULL AUTO_INCREMENT, imie char(30), lata char(3), punkty char(3), mistrzostwa char(3), PRIMARY KEY(id))';
  12.  
  13.  
  14.  
  15.  
  16.  
  17. ?>

polaczenie sie nawiazuje jest ok problem ze potem jak sprawdzam z phpmyadmin to nic sie nie tworzy cos tu napewno jest zle albo czegos brakuje z gory bardzo dziekuje za pomoc oglnie zielony jestem w programowaniu sad.gif
Go to the top of the page
+Quote Post
webmaniak
post 31.01.2011, 15:21:34
Post #2





Grupa: Zarejestrowani
Postów: 371
Pomógł: 30
Dołączył: 14.04.2010

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


Jeśli masz taki kod i nie wiesz co jest w nim nie tak, to odpal phpmyadmin i wpisz go tam. Druga sprawa:
  1. 'CREATE TABLE `test`.`dokumentacja` (
  2. `id_dok` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  3. `nazwa_dok` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_polish_ci NOT NULL ,
  4. ...
  5. `data` DATETIME NOT NULL
  6. ) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_polish_ci';

To jest moje zapytanie które tworzy tabele. I na pewno działa. Wstaw do swojego i będzie hulać.

Ten post edytował webmaniak 31.01.2011, 15:22:46


--------------------
Pomogłem - kliknij , wprowadziłem w błąd - poinformuj niżej lub na pm.
Go to the top of the page
+Quote Post
de_gie
post 31.01.2011, 15:47:04
Post #3





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 1.01.2011

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


wlasnie robilem z phpmyadmin w phpmyadmin ladnie sie tworzy tabela wiec klkam na zeby zrobilo kod php i z strony www jak wykona sie skrypt w phpmyadmin nic sie nowego nie pojawia sad.gif o to kod bo troche poprawilem ale nic nie dalo sad.gif
  1. <?php
  2. // nawiazujemy polaczenie
  3. $connection = @mysql_connect('localhost', 'admin', 'xxxxxx')
  4. // w przypadku niepowodznie wyświetlamy komunikat
  5. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  6. // połączenie nawiązane ;-)
  7. echo "Udało się połączyć z serwerem!<br />";
  8. // nawiązujemy połączenie z bazą danych
  9.  
  10.  
  11. mysql_select_db ("admin_dane") or die ("Nie mozna wybrac bazy danych");
  12.  
  13. $sql = "CREATE TABLE `nowatrzy`(\n"
  14. . "tytul VARCHAR(60)\n"
  15. . ")\n"
  16. . ";";
  17.  
  18.  
  19.  
  20.  
  21.  
  22. ?>
  23.  
  24.  


teraz admin i haslo w polaczeniu sa takie same jak sie loguje do phpmyadmin nastepnie wybieram baze ktora mam juz utworzona admin_dane no idalej jest kod do tworzenia tabeli z phpmyamin i nic sie nie dzieje zaznacze jeszcze ze nadole w phpadmin wyswietla sie komunikat

Dodatkowe możliwości pracy z połączonymi tabelami zostały wyłączone. Aby dowiedzieć się, dlaczego - kliknij moze to powoduje jakias blokade
Go to the top of the page
+Quote Post
webmaniak
post 31.01.2011, 16:07:59
Post #4





Grupa: Zarejestrowani
Postów: 371
Pomógł: 30
Dołączył: 14.04.2010

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


Czy ta zmienna $sql prezentuje Twój cały kod SQL? Bo jeśli tak to musisz jeszcze to zmienić. Jak? Napisałem wyżej. Dodatkowo musisz jeszcze wykonać to zapytanie, czyli
  1. if(mysql_query($sql)) //jeśli tabela została poprawnie utworzona
  2. {
  3. //komunikat że utworzono, albo wywołanie innej funkcji
  4. }
  5. else //jeśli nie utworzono tabeli
  6. {
  7. echo 'Wystąpił błąd przy tworzeniu tabeli' . mysql_error() . "\n";; //wyświetlamy komunikat o błędzie
  8. }

Zobaczysz sam jaki masz komunikat błędu.
Generalnie musisz utworzyć kod SQL taki jak podałem w pierwszym moim poście. Jeśli nie pomoże to wklej więcej kodu albo napisz jakie masz/chcesz mieć pola w tabeli.


--------------------
Pomogłem - kliknij , wprowadziłem w błąd - poinformuj niżej lub na pm.
Go to the top of the page
+Quote Post
de_gie
post 31.01.2011, 16:31:52
Post #5





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 1.01.2011

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


dziala super dzieki wielkie za pomoc tylko mam pytanko dziala jak jest warunek if(mysql_query($sql)) to co ten warunek robi w ktorym momencie tworzy sie tabela bo wczesniej mialem zdeklarowana tabele do zmiennej $SQL ale pewnie sie w tym momencie nie tworzyla wiec w ktorym wydaje mi sie ze if(mysql_query($sql)) tu ale prosilbym o wyjasnienie tego kodu
Go to the top of the page
+Quote Post
webmaniak
post 31.01.2011, 16:45:38
Post #6





Grupa: Zarejestrowani
Postów: 371
Pomógł: 30
Dołączył: 14.04.2010

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


Ja tam specjalistą nie jestem, tym bardziej nie umiem fachowo tłumaczyć, napiszę jak ja to rozumiem. To co miałeś w zmiennej $sql to samo zapytanie. Tak samo jakbyś miał:
  1. $tekst = "Ala ma kota";

Jeśli taki tekst chcesz wyświetlić w przeglądarce musisz użyć echo bądź print:
  1. echo $tekst;

Analogicznie jest ze zmienną $sql którą utworzyłeś. Sama zmienna nic nie zmieni. Żeby wykonać zapytanie, czyli żeby w bazie coś się zrobiło należy użyć mysql_query. Równie dobrze możesz zrobić:
  1. $sql="CREATE ...";
  2. $wykonaj = mysql_query($sql);
  3. if($wykonaj)
  4. {
  5. //komunikat że utworzono, albo wywołanie innej funkcji
  6. }
  7. else //jeśli nie utworzono tabeli
  8. {
  9. echo 'Wystąpił błąd przy tworzeniu tabeli' . mysql_error() . "\n";; //wyświetlamy komunikat o błędzie
  10. }

Podsumowując mysql_query służy do wykonania tego zapytania $sql, a ten if jest po to żeby sprawdzić czy wszystko przebiegło pomyślnie. Jeśli tak to zmienna $sql(w przypadku wyżej zmienna $wykonaj) ma wartość true czyli 1, a jeśli nie to ma wartość false, czyli 0.
Mam nadzieję że przybliżyłem nieco działanie kodu smile.gif.

Ten post edytował webmaniak 31.01.2011, 16:51:09


--------------------
Pomogłem - kliknij , wprowadziłem w błąd - poinformuj niżej lub na pm.
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: 19.06.2025 - 20:06