Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Nie widać bazy w phpmyadmin z poziomu PHP[początkujący]
Forum PHP.pl > Forum > Przedszkole
SheepSheep
Witam serdecznie!

Jestem jeszcze zielony w tematyce PHP + MYSQL więc proszę o wyrozumiałość.

Krótkie pytania:

Dlaczego po wykonaniu takich zapisów
  1. $zapytanie = 'CREATE DATABASE sheep';
  2. $wykonaj = mysql_query ( $zapytanie );

i oczywiście wcześniejszym sprawdzeniu połączenia z mysql (mysql_connect) utworzona baza nie pokazuje mi się na liście w phpmyadmin?

Bawie się(bo tego nie można nazwać pisaniem kodu) Wampserverem, stworzenie bazy i tabel z poziomu phpmyadmina w SQL nie stanowi żadnego problemu, natomiast chcę z poziomu php stworzyć bazę, tabelę i w wyniku czego nie widzę tych baz/tabel po lewej stronie w phpmyadmin.
Czy ja w ogóle do tego dobrze podchodzę? Czy może stworzyć w phpmyadmin bazę, jej tabelę, a w php tylko na niej operować (dodawać wpisy/wyszukiwać/kasować itp.)? Myślę, że na początek napisanie czegoś takiego będzie dobrą praktyką.

Liznąłem(parę tutoriali) troszkę podstaw php więc każda pomoc będzie na pewno pomocna.

Czy stosowanie takich zapytań do SQL'a, które umieściłem w syntaxie jest poprawne?

Dziękuję z góry za wszelką pomoc.

Pozdrawiam
Piogola
po wykonaniu zapytania dodaj
i sprawdź co wypluwa
abort
1. Zapytanie jest składniowo poprawne, powinno się wykonać
2. Jeśli się nie wykonało, to powinieneś sprawdzić, co zawiera zmienna $wykonaj i co wyrzuca mysql_error();
3. funkcje mysql_* wkrótce znikną z nowych wersji PHP - może warto zainwestować swój czas w poznawanie mysqli albo PDO?

Ogólnie tworzenie tabel w phpmyadminie nie jest takie głupie - tym bardziej, że nawet w trakcie pisania programu musimy czasami zrewidować pogląd na kształt bazy i dodać/usunąć kolumny, a najlepiej to zrobić w jakimś sensownym interfejsie. Oczywiście warto umieć tworzyć bazy i tabele zwykłymi zapytaniami, ale człowiek jest leniwy i phpmyadmin to wcale nie takie zło.

P.S.
Nie wiem jak to u Ciebie wygląda, ale może warto zainteresować się poleceniem FLUSH: http://dev.mysql.com/doc/refman/5.0/en/flush.html

SheepSheep
Problemem okazał się brak
root w:
  1. $lacz = mysql_connect( "localhost","root","");


To dziwne, że nie ma różnicy pomiędzy używaniem cudzysłowów, a apostrofów.
A co do mysql_error() było podstawowy błąd, którego w google było od groma. Access denied for user wink.gif)


Przy okazji spytam czy wiecie dlaczego nie mogę w wierszu poleceń tworzyć tabeli/baz(tray wamp->mysql->mysql console)?

Podejrzewam, że winien jest wszystkiemu chyba ten użytkownik, którym tak usilnie próbuję wszystko zrobić(brak ustawienia hasła?).



Dlatego chciałem nauczyć się tworzyć tabele z poziomu php'a bo z tym mam problem i zwracam się do Was, mysql przy tym to pikuś.

Czyli gdy już w miarę nauczę się tego, wyjdzie to z użytku, super smile.gif

Jeszcze prosiłbym o wskazanie różnic między:
  1.  
  2. $zapytanie = 'CREATE DATABASE sheep';
  3.  
  4. $wykonaj = mysql_query ( $zapytanie );
  5.  
  6. a tym
  7. mysql_create_db("sheep");


Dzięki za dotychczasowe odpowiedzi wink.gif
abort
Z cyklu "krótka instrukcja działania forum": Jak masz kod w PHP (tak tak Ty zrobiłeś, czyli w odpowiednich tagach), to funkcje wyświetlają się podkreślone i na czerwono.
Mało tego, możesz w takie funkcje klikać - przeniesie Cię na stronę manuala PHP dotyczącą właśnie tej funkcji, którą kliknąłeś.

A teraz clue: kliknij na mysql_create_db i poczytaj wszystko, co jest napisane, ze szczególnym uwzględnieniem Example #1 i User Contributed Notes, #2.

P.S.
Nie ma żadnej różnicy, dobrze kombinujesz smile.gif
SheepSheep
Jak narazie jedyną różnicą jaką zauważyłem jest to, ze zapytanie mysql_query jest 'uniwersalne', czyli możemy tam podstawić dowolne zapytanie do bazy, natomiast mysql_create_db sluzy tylko do tworzenia bazy, tylko taką róznicę narazie widzę, ale to chyba nie jest jakaś najważniejsza między nimi bo to by było za proste wink.gif

Jakiś cPanel creator będę musiał pobrać.

Zapowiada się ciekawy weekend wink.gif

Jeśli masz jakieś sposoby albo porady dla mnie by kombinować, proszę napisz mi je wink.gif


Pozdrawiam
abort
Cytat(SheepSheep @ 18.10.2012, 23:11:20 ) *
Jak narazie jedyną różnicą jaką zauważyłem jest to, ze zapytanie mysql_query jest 'uniwersalne', czyli możemy tam podstawić dowolne zapytanie do bazy, natomiast mysql_create_db sluzy tylko do tworzenia bazy, tylko taką róznicę narazie widzę, ale to chyba nie jest jakaś najważniejsza między nimi bo to by było za proste wink.gif

W poprzednim poście nieco nakłamałem pisząc "nie ma żadnej różnicy". Otóż jest jedna, najważniejsza - dotyczy zwracanych wartości. W mysql_query może to być typ resource albo bool - w skrócie: jak robisz SELECT na bazie, to zwracany jest resource, z którego możesz odczytywać poszczególne wiersze (np. przez mysql_fetch_assoc). Ale jak już robisz np. INSERT, to zwrotną informacją będzie tylko to, czy zapytanie wykonało się poprawnie - więc dostaniesz logiczne TRUE lub FALSE.

Natomiast w przypadku mysql_create_db dostaniesz tylko logiczną wartość, która będzie oznaczała, czy tablica w bazie została utworzona czy nie.

Wszystko to zostało napisane w manualu do mysql_query. Swoją drogą, na stronie php są dostępne manuale w postaci Windows HTML Help File - polecam. Nawet pomimo tego, że nie zawsze pierwszej świeżości, to jednak na początek i tak będziesz miał co czytać. Oczywiście opis funkcji na stronie php też jest nie do przecenienia, w szczególności cenne bywają User Contributed Notes - ale to może jednak nieco później.

Cytat(SheepSheep @ 18.10.2012, 23:11:20 ) *
Jakiś cPanel creator będę musiał pobrać.
Zapowiada się ciekawy weekend wink.gif

Spokojnie, dasz radę. Oczywiście nie od razu Kraków zbudowano, ale powoli do celu. Swoją drogą, po co cPanel? To chyba armata na muchy. phpMyAdmin powinien wystarczyć, a jeśli już koniecznie chcesz coś okienkowego do bazy, to fajną rzeczą jest Heidi SQL, o czym kiedyś poczytałem właśnie tu na forum i bardzo mi to przypadło do gustu.
nospor
Cytat
To dziwne, że nie ma różnicy pomiędzy używaniem cudzysłowów, a apostrofów.

Dziwne to jest to, czumu początkujący nie czytają dokumentacji...

Lektura obowiązkowa:
http://pl1.php.net/manual/pl/language.types.string.php
A dowiesz się, że jednak różnice są.
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.