Autor Zpráva
Vilak
Profil
Dobrý den.

Jsem s tímto začátečník, tak mě omluvte, pokud bude něco trochu nesrozumitelného. Zkouším si na své stránky udělat registraci/přihlášení, ale nevím, jak mám napojit/vytvořit (podle všeho) SQL databázi. Postupuju podle tohoto návodu: http://www.koding.cz/priklady.php?id=110
Já ovšem nevyužívám žádný z redakčních systémů (phpmyadmin, phpfusion, wp...), A tak si myslím, že chyba bude hned u 1. kroku, kdy se vytváří SQL.
Já jsem to udělal tak, že jsem místo toho vytvořil dokument users.sql, ale poté se mi to přejmenovalo jaksi pouze na users (bez jakéhokoliv codecu).
Když jsem vytvořil další soubory (db.php, registration.php....) podle návodu a došel do kroku, kdy by měla byt registrace funkční, tak mi to vyhodilo chybu na 8. řádku, tedy na
$link = mysql_connect($DBSERVER,$DBUSER,$DBPASS) or die ('I cannot connect');
Nikde jsem nic neměnil. Web mám u Wedosu a všechny soubory byly ve stejné složce.

Mohli byste mi poradit, jak tedy vytvořit nějakou databázi?
juriad
Profil
http://kb.wedos.com/webhosting/databaze-info.html
A pak funkci mysql_connect předáš údaje k databázi, kterou jsi vytvořil. A zvaž, zda používat zastaralé rozhraní mysql_*, když bude v budoucnu odstraněno. Náhradou je mysqli_*, které se liší jen nepatrně.

Až budeš mít databázi, silně doporučuji nainstalovat Adminer (něco jako PHPMyAdmin) na správu existující databáze (můžeš v tom pokládat dotazy a procházet údaje v databázi).
juriad
Profil
Pročetl jsem si ten návod a myslím, že je to neuvěřitelný bastl. Obsahuje velké množství chyb a špatných návyků. Bohužel o žádném návodu, který by byl ideální, nevím
Vilak
Profil
Dobře, díky moc :) Ale pořád mám problém s řádkem níž.
db.php vypadá teď takto:
<?php
$DBSERVER = 'wmXY.wedos.net';
$DBUSER = 'aXYZ_users';
$DBPASS = 'mojeheslo';

$DB = 'users';

$link = mysql_connect($DBSERVER,$DBUSER,$DBPASS) or die ('I cannot connect');
mysql_select_db($DB,$link) or die ('I cannot select DB');
mysql_query("SET NAMES utf8");
?>
a SQL tabulka takto (teda pokdu je to doopravdy ono, nevím, jestli jsem to nazval správně)
CREATE TABLE `users` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT,
`name` VARCHAR( 255 ) NOT NULL,
`login` VARCHAR ( 255 ) NOT NULL,
`pass` VARCHAR ( 255 ) NOT NULL,
PRIMARY KEY (`id`)
)ENGINE=MYISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci

Když se zkusím zaregistrovat, tak mi to píše "I cannot select DB", tedy ot vypisuje řádek 9.
btw. můžu takto ukazovat informace o db (jméno, uživatel)?


S PHP celkem umím, a popř. mám i přátele, kteří by mi s tím pomohli (s php), bohužel neznám nikoho, kdo umí s databázemi. Mám v plánu si to celé poupravit podle sebe, jak potřebuju já. Já jen potřebuju vytvořit funkční databázi kvůli registru/přihlášení a to pak využívat. Ostatní věci v PHP mi problém nedělají. A proto se potřebuju naučit s databází, abych si to mohl poupravit... Abych ten code uměl dobře přečíst.
Moderátor juriad: Odstraněny údaje o připojení k DB
juriad
Profil
databáze != tabulka
Máš na tom 9. řádku zadat název databáze, kterou jsi vytvořil.

Jeden server (k němu se uživatel přihlašuje jménem a heslem) obsahuje spoustu databází (každá z nich patří nějakému uživateli; jeden uživatel jich může mít víc) a databáze obsahuje tabulky.
juriad
Profil
Raději si ty údaje změň; heslo jsi sem sice nenapsal, ale lepší je udržet tajnosti i ostatní údaje.
Vilak
Profil
Takže
$DB = 'users'; mám nahradit $DB = 'dXYZ_users';? Protože když jsem toto udělal, tak mi to vypsalo toto "Table 'dXYZ_users.users' doesn't exist - 1146"
Omlouvám se, že tomu nerozumím, ale s tímto jsem nikdy nedělal. Mohl byste, prosím vás, napsat, kde bych co měl čím "nahradit"?


Dobře juriad, údaje si změním, jakmile mi to půjde :) Děkuji za informaci.
Moderátor juriad: Projedl jsem to já
juriad
Profil
Ano, dXYZ_users vypadá jako správný název databáze.
A uvnitř databáze musíš vytvořit tabulku users. Použij třeba PHPMyAdmin (https://pma.wedos.net/).

1 web obvykle používá 1 databázi a v ní má všechny tabulky (kterých můžou být třeba desítky).

Po přihlášení do PHPMyAdminu si vlevo vyber databázi dXYZ_users. A pak vytvoř tabulku buď tím průvodcem, nebo pomocí třetího tlačítka vlevo nahoře můžeš zadat přímo celý příkaz k vytvoření tabulky (CREATE TABLE `users` ...).
Vilak
Profil
Super! Funguje! Díky moc :) teď se chci ještě zeptat, kde se v tom phpmyadmin můžu podívat do databáze (tedy na to, co jsem tam vložil při registraci)
juriad
Profil
V levém panelu uvidíš tabulku users, klikni na ní. A pak v horní liště vybereš Browse, čímž se ti zobrazí její obsah.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: