Zapsání proměnné do databáze

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Odpovědět
pajacz17
Level 3
Level 3
Příspěvky: 592
Registrován: 22 bře 2014 22:31

Zapsání proměnné do databáze

Příspěvek od pajacz17 »

Ahoj, spáchal jsem tento jednoduchý demonstrativní příklad.

Kód: Vybrat vše

<?php                
               
               
                $con = mysqli_connect('localhost', 'root', '', 'databaze2017') or die ('nepodařilo se načíst databázi');
                mysqli_set_charset($con,"utf8");
               
                $os1 = "Karel";
                $os2 = "karel";
               
                $vloz = 'INSERT INTO komentare( jmeno, komentar) VALUES (?,?)', $os1, $os2;
               
                if (mysqli_query($con, $vloz))
                {
                echo "zapsáno";
                }
                else
                {
                echo 'Nezapsáno';
                }
               
               


                ?>
               


Problém je v proměnné vloz a os1 a os2. Když místo otazníků napíšu text a odstraním $os1 a $os2, tak se to zapíše do databáze. Jak prosím správně zapsat proměnné do $vloz, aby tam zůstaly otazníky? Děkuji
Uživatelský avatar
Neoact
nováček
Příspěvky: 25
Registrován: 06 led 2017 00:27

Re: Zapsání proměnné do databáze

Příspěvek od Neoact »

zkus "VALUES (?, ?)" , kde jediná změna proběhla v mezeře za čárkou?
pajacz17
Level 3
Level 3
Příspěvky: 592
Registrován: 22 bře 2014 22:31

Re: Zapsání proměnné do databáze

Příspěvek od pajacz17 »

Bohužel nefunguje. Vůbec jsem tento zápis pro mysqli nenašel, jestli to nejde jen pro PDO, netušíte prosím někdo?
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: Zapsání proměnné do databáze

Příspěvek od LuCaCZ »

Kód: Vybrat vše

$vloz = 'INSERT INTO komentare( jmeno, komentar) VALUES (?,?)', $os1, $os2; 
je samozřejmě blbost - syntax error

když to chceš mermomocí "přes otazníky" tak čti tu
http://jecas.cz/pdo
https://www.w3schools.com/php/php_mysql ... ements.asp
pajacz17
Level 3
Level 3
Příspěvky: 592
Registrován: 22 bře 2014 22:31

Re: Zapsání proměnné do databáze

Příspěvek od pajacz17 »

Děkuji. Já jsem si myslel, že to jde jen v tom PDO. Ještě mimo mísu, to mysqli má cenu se učit, nebo je lepší opravdu začít to PDO? Děkuji
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Zapsání proměnné do databáze

Příspěvek od CZechBoY »

PDO má stejný rozhraní pro všechny databáze. MySQLi je jen pro MySQL/MariaDB atd. takže když začne používat oracle tak se musíš zas "učit" používat oci_ funkce.
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
Odpovědět

Zpět na „Programování a tvorba webu“