• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak okreslic bazę sql, dlaczego select nie działa?

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
+1 głos
254 wizyt
pytanie zadane 8 października 2020 w SQL, bazy danych przez Mateusz Kita Początkujący (380 p.)

Mam w mysql utworzoną baze "baza", oraz inne bazy. Jak wybrać baze "baza"?

Bo SELECT z tego co rozumiem sluzy do wyboru tabeli, ale jak najpierw okreslic z ktorej bazy?

 

Mam jeszcze drugie pytanie. Mam w bazie "baza" tabelę "tabela1". Gdy probuję sie po prostu odniesc tak jak w artykulach (czyli bez okreslenia wczesniej bazy) do takiej tabeli jest błąd:

Parse error: syntax error, unexpected 'tabela1' (T_STRING) in /opt/lampp/htdocs/strona/test/index.php on line 10

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<?php
		
		SELECT * FROM tabela1;
		
		?>
	</body>
</html>

 

1 odpowiedź

0 głosów
odpowiedź 9 października 2020 przez VBService Ekspert (256,320 p.)

Domyślam się, że chodzi Tobie o połączenie się z bazą danych za pomocą  php. Musisz w pierwszej kolejności nawiązać połączenie z serwerem bazy danych za pomocą polecenia: mysqli connect() np.:

<?php
$mysqli = new mysqli("localhost","login","hasło","nazwa_bazy_danych");

// Check connection
if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}
?>

 

 

                                

komentarz 9 października 2020 przez Mateusz Kita Początkujący (380 p.)

Zrobiłem tak:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
	
		<?php
		$mysqli = new mysqli("localhost","","","baza");

		// Check connection
		if ($mysqli -> connect_errno) {
			echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
			exit();
		}

		
		SELECT * FROM tabela1;
		
		?>
	</body>
</html>

i dalej jest ten error:

Parse error: syntax error, unexpected 'tabela1' (T_STRING) in /opt/lampp/htdocs/strona/test/index.php on line 19

komentarz 9 października 2020 przez VBService Ekspert (256,320 p.)

Teraz musisz użyć mysqli prepare() do utworzenia zapytania za pomocą sql-a.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
     
        <?php
        $mysqli = new mysqli("localhost","","","baza");
 
        // Check connection
        if ($mysqli -> connect_errno) {
            echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
            exit();
        }
 
         $stmt = $mysqli -> prepare("SELECT * FROM tabela1");
         $stmt -> execute();
         
        ?>
    </body>

to polecenie spowoduje wysłanie Twojego zapytania do bazy danych i wykonanie go.

$stmt = $mysqli -> prepare("SELECT * FROM tabela1");
$stmt -> execute();

 

komentarz 9 października 2020 przez Mateusz Kita Początkujący (380 p.)
dlaczego wszędzie w kursach jest by tylko wpisać

SELECT * FROM tabela;

?
komentarz 9 października 2020 przez Mateusz Kita Początkujący (380 p.)

Teraz jest błąd

Warning: mysqli::__construct(): (HY000/1044): Access denied for user ''@'localhost' to database 'baza' in /opt/lampp/htdocs/strona/test/index.php on line 3
Failed to connect to MySQL: Access denied for user ''@'localhost' to database 'baza'

komentarz 9 października 2020 przez VBService Ekspert (256,320 p.)
edycja 9 października 2020 przez VBService

Musisz podać login i hasło

$mysqli = new mysqli("localhost","login","hasło","baza");

Widzę, że uzywasz lampp

 /opt/lampp/htdocs/strona/test/index.php

domyślnie w lampp, jak nic nie zmieniałeś samodzielnie, to połączenie powinno wyglądać tak:

$mysqli = new mysqli("localhost","root","","baza");

trzeci parametr czyli hasło w tym przypadku jest puste

komentarz 9 października 2020 przez Mateusz Kita Początkujący (380 p.)
uzywam xampp, czyli na localhost,

nie mam hasła ani uzytkownika
1
komentarz 9 października 2020 przez Mateusz Kita Początkujący (380 p.)

@VBService,
 wpisałem root i teraz działa

komentarz 9 października 2020 przez adrian17 Mentor (350,400 p.)

dlaczego wszędzie w kursach jest by tylko wpisać

SELECT * FROM tabela;

?

Bo kursy uczą składni SQLa - a Ty próbujesz wrzucić SQLa w środek kodu PHPa.

Podobne pytania

0 głosów
1 odpowiedź 670 wizyt
0 głosów
1 odpowiedź 302 wizyt
pytanie zadane 18 czerwca 2019 w SQL, bazy danych przez Maikel11 Początkujący (470 p.)
0 głosów
1 odpowiedź 207 wizyt

93,159 zapytań

142,171 odpowiedzi

321,891 komentarzy

62,489 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 453p. - Marcin Putra
  2. 453p. - dia-Chann
  3. 447p. - Łukasz Piwowar
  4. 443p. - CC PL
  5. 431p. - Łukasz Eckert
  6. 428p. - rafalszastok
  7. 423p. - Adrian Wieprzkowicz
  8. 418p. - rucin93
  9. 410p. - Piotr Aleksandrowicz
  10. 408p. - ksalekk
  11. 402p. - Mariusz Fornal
  12. 340p. - ssynowiec
  13. 329p. - nidomika
  14. 319p. - Michal Drewniak
  15. 298p. - Dawid128
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...