Mám problém s odoslaním e-mailovej adresy do databázy s nasledujúcim kódom, pričom new je názov tabuľky. Kde mám chybu?
<?php
$sql = 'INSERT INTO new email';
if (isset($_POST["email"]))
{
if (eregi("^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$",$_POST['email']))
echo "Váš email bol zaregistrovaný na odber nášho sparvodaja";
else
echo "Zadali ste chybný email!";
}
?>
Odoslanie do databazy Vyřešeno
Re: Odoslanie do databazy
A to je celý kód?
Chybí ti tam připojení na DB a vykonání příkazu SQL. To co máš v prvním řádku je jen přiřazení příkazu do proměnné a ten je taky blbě.
Chybí ti tam připojení na DB a vykonání příkazu SQL. To co máš v prvním řádku je jen přiřazení příkazu do proměnné a ten je taky blbě.
Re: Odoslanie do databazy
No samozrejme pripojenie do DB tam mám, a to je funkčné - funguje pri iných veciach. Problém je v už spomínanej časti kódu.
Skúšal som to písať všelijak, toto bola posledná zúfalá verzia. Môžeš mi napísať ako to má presne byť? Morím sa s tým od včera a nefunguje mi to.
Skúšal som to písať všelijak, toto bola posledná zúfalá verzia. Môžeš mi napísať ako to má presne byť? Morím sa s tým od včera a nefunguje mi to.
- CZechBoY
- Master Level 9.5
- Příspěvky: 8813
- Registrován: srpen 08
- Bydliště: Brno
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Odoslanie do databazy
Chtělo by to víc kodu, z tohohle těžko poznat o co jde.
Pokud jedeš na mysql, tak by měl být název tabulky v zpětných apostrofech `new`.
Správný formát INSERT příkazu je INSERT INTO tabulka (sloupce) VALUES (hodnoty).
Pokud jedeš na mysql, tak by měl být název tabulky v zpětných apostrofech `new`.
Správný formát INSERT příkazu je INSERT INTO tabulka (sloupce) VALUES (hodnoty).
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Re: Odoslanie do databazy
CZechBoY píše:Chtělo by to víc kodu, z tohohle těžko poznat o co jde.
Pokud jedeš na mysql, tak by měl být název tabulky v zpětných apostrofech `new`.
Správný formát INSERT příkazu je INSERT INTO tabulka (sloupce) VALUES (hodnoty).
Áno skúšal som, také niečo mi vyhodila aj databáza, keď som si dal vytvoriť kód, ale akú hodnotu mám uviesť, pretože
hodnoty sa budú meniť?
- lamin_cz
- Level 2.5
- Příspěvky: 314
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Odoslanie do databazy
Kód: Vybrat vše
$sql = "INSERT INTO `tabulka` (`sloupec1`, `sloupec2`, `sloupec3`) VALUES ('hodnota1', 'hodnota2','hodnota3')";
Hodnoty mohou být proměnné (ošetřené proti injection)
Kód: Vybrat vše
$email = $_POST["email"];
if( filter_var( $email, FILTER_VALIDATE_EMAIL ) ) {
$sql = "INSERT INTO `e-maily` (`email`) VALUES ('$email')";
...
}
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Odoslanie do databazy
Nefunguje
- lamin_cz
- Level 2.5
- Příspěvky: 314
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Odoslanie do databazy
fili píše:Nefunguje
To je široký pojem ... pomohlo by chybové hlášení a nebo přesný kód, kterým se to snažíš do databáze dostat, takto to je střílení od boku
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Odoslanie do databazy
Použil som kód, ktorý si mi poradil. Žiadne chybové hlásenie, vypíše mi ako by to bolo OK "Váš email bol zaregistrovaný na odber nášho spravodaja", ale v databáze nič nepribudlo, ani prázdny riadok.
- lamin_cz
- Level 2.5
- Příspěvky: 314
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Odoslanie do databazy
Můžeš poslat daný kód? Klidně do SZ, pokud ho nechceš tady veřejně Takto bychom chybu hledali hodně dlouho
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
- lamin_cz
- Level 2.5
- Příspěvky: 314
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Odoslanie do databazy
chyba nalezena - chybělo mysql_query s patřičným dotazem
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti