Stránka 1 z 3

chyba v php

Napsal: 01 zář 2015 10:40
od pajacz17
Ahoj můžete mi prosím poradit, co mám špatně?

Chci odeslat data z jednoho pole:

<body>
<form method="POST" action="zpracovani_formulare1.php" >
<p>Zadejte oblíbené jmeno:
<input type="text" name="jmeno" size="20">
<input type="submit" name="submit" value="Odeslat"></p>
</form>
</body>

zpracovani_formulare1.php
<?php
$spojeni=mysql_connect("localhost","root","");
if(!$spojeni) die("Žádné spojení s MySQL");
$sqlprikaz="insert into registrace (prijmeni,jmeno,bydliste) values ( '{$_POST['jmeno']}', 'Aleš', 'Praha')";
mysql_db_query("sprava",$sqlprikaz,$spojeni);
mysql_close($spojeni);
?>

Vypíše mi to chybu, ale do databáze Aleš a Prahu zapíše. Už vůbec nevím, jak to zapsat.

Děkuji za rady

 ! Zpráva od: Clorky
Přesunuto.

Re: chyba v php

Napsal: 01 zář 2015 11:07
od Petr Hnátek
Zkus to takto

Kód: Vybrat vše


$prijmeni 
$_POST['prijmeni'];

$sqlprikaz mysql_query("INSERT INTO registrace (prijmeni,jmeno,bydliste) VALUES ( '$prijmeni', 'Aleš', 'Praha')"); 

Re: chyba v php

Napsal: 01 zář 2015 11:21
od pajacz17
Bohužel nefunguje. Hlásí to chybu na řádku v přidané proměnné $prijmeni. Nemůže být třeba chyba i v XAMPPU?

Děkuji za pomoc. Sice předtím jsem to zkoušel také s nadefinovanou proměnou $_POST['prijmeni']; ale to mi nevím proč nešlo.

Jinak to mám takto:
<?php
$spojeni=mysql_connect("localhost","root","");
if(!$spojeni) die("Žádné spojení s MySQL");
$prijmeni = $_POST['prijmeni'];
$sqlprikaz = "INSERT INTO registrace (prijmeni,jmeno,bydliste) VALUES ( '$prijmeni', 'David', 'Praha')";
mysql_db_query("sprava",$sqlprikaz,$spojeni);
mysql_close($spojeni);
?>

Musel jsem vymazat u příkazu insert zápis mysql_query(. Nevíš prosím proč?
Děkuji

Re: chyba v php

Napsal: 01 zář 2015 11:24
od Petr Hnátek
Jakou chybu? Vlož ji sem.

Re: chyba v php

Napsal: 01 zář 2015 11:40
od pajacz17
Předtím jsem vlastně proměnnou $prijmeni měl hned za značkou <?php , ale to předpokládám nevadí.

Re: chyba v php

Napsal: 01 zář 2015 11:42
od Petr Hnátek
Protože tam máš

Kód: Vybrat vše

mysql_db_query() 


Můžeš to udělat i takto s mysql_query():

Kód: Vybrat vše


$spojeni 
mysql_connect("localhost","root","")or die("Žádné spojení s MySQL");
mysql_select_db("sprava")or die("Databáze neexistuje");

$prijmeni $_POST['prijmeni'];
mysql_query("INSERT INTO registrace (prijmeni,jmeno,bydliste) VALUES ('$prijmeni', 'David', 'Praha')"$spojeni);
mysql_close($spojeni);
 

Re: chyba v php

Napsal: 01 zář 2015 12:14
od pajacz17
JJ děkuji za ujasnění. Nevíš prosím nějaké pěkné stránky o php? Já jsem se to učil z knížky z roku 2010 a tom o tomto zápisu nic není. Je ten tvůj styl zápisu nějak výhodnější?

Re: chyba v php

Napsal: 01 zář 2015 15:14
od Petr Hnátek
Nevím zda ten styl je výhodnější, ale určitě je více používanější :)

PHP: http://www.w3schools.com/php/default.asp
SQL: http://www.w3schools.com/sql/default.asp

Re: chyba v php

Napsal: 02 zář 2015 08:12
od pajacz17
To je perfektní, mockrát děkuji. Smím ještě poprosit o jednu věc, a to jak nastavit znakovou sadu? Pořád v phpmyadmin vidím špatně znaky u diakritiky. Php mám nastavené na UTF-8 a phpmyadmin mám porovnání na utf-8_czech_ci. Příkaz pro nastavení používám tento:mysql_query("SET NAMES 'utf8_czech_ci'"); Nevíte prosím, kde je chyba? Děkuji

Re: chyba v php

Napsal: 02 zář 2015 09:02
od CZechBoY
Lepší je použít

Kód: Vybrat vše


mysql_set_charset
('utf8');
 

Re: chyba v php

Napsal: 02 zář 2015 13:07
od pajacz17
Bohužel to nepomohlo. Nemůže být chyba i v tom, že nemám nejnovější verzi phpmyadmin?

Re: chyba v php

Napsal: 02 zář 2015 13:53
od Petr Hnátek
Já tedy používám toto a funguje to.

Kód: Vybrat vše


mysql_query
("set names 'utf8'");