Cestina a mysql – MySQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Cestina a mysql – MySQL – Fórum – Programujte.comCestina a mysql – MySQL – Fórum – Programujte.com

 

matouch0
Newbie
8. 11. 2007   #1
-
0
-

Zdravim, mam ještě jeden problém, a to, že text předávaný z formuláře do databáze nesmí obsahovat diakritiku. Když jí obsahuje tak mi to hodi error a nic se neodešle. tu je kod:



<?php
if (isset($_POST['odeslat'])) {

$zpráva = NULL;

if (empty($_POST['clanek'])) {
$clanek = FALSE;
$zpráva .= '<p>Nelze odeslat prázdná stránka!</p>';
} else {
$clanek = $_POST['clanek'];
}

if ($clanek) {

require_once ('mysql_spojit.php');
$dotaz = "INSERT INTO internet(text_clanku, datum_pridani) VALUES ('$clanek', NOW())";
$výsledek = @mysql_query ($dotaz);
if ($výsledek) {

echo 'Článek byl úspěšně přidán.';
echo '<a href="rs_main.php">zpet</a>';
exit();

} else {
$zpráva .= '<p>Přerušeno kvuli systémové chybě.</p><p>'. mysql_error(). '</p>';
}

mysql_close();

} else {
$zpráva .= '<p>Zkuste to prosím znovu.</p>';
}

}

if (isset($zpráva)) {
echo '<font color="red">', $zpráva, '</font>';
}
?>
<p></p>
<h2>Psaní článku - Internet</h2>
<form action="napsat_clanek_internet.php" method="post">
<fieldset><legend>Text článku</legend>
<p></p>
<textarea name="clanek" cols="80" rows="10" value="<?php if (isset($_POST['clanek'])) echo $_POST['clanek']; ?>"></textarea></p>
<input type="submit" name="odeslat" value="Odeslat článek" />
</form>

Nahlásit jako SPAM
IP: 78.108.96.–
Sopta0
Návštěvník
9. 11. 2007   #2
-
0
-

Čau, tak s češtinou ti sice nepomůžu ale mám jednu připomínku.

if($výsledek) {
tělo;
}

Upraveno:
if ($vysledek ) { ... }

Podle mě je to lepší zápis. Popravdě řečeno nevím jestli to fachá i s diakritikou.

Nahlásit jako SPAM
IP: 195.113.151.–
Sotolář Zdeněk
Earl Cash0
Věrný člen
9. 11. 2007   #3
-
0
-

promenne mohou byt zapisovany s diakritikou ale nedoporucuje se to. kdo si pak ma pamatovat ze nekde nahore napsal promennou s diakritikou...ale nevim jak je to pak se zobrazenim v URL... mozna ze pak problem nastane..

Nahlásit jako SPAM
IP: 217.197.150.–
Oh my goodness, shut me down! Machines making machines. How perverse. (C-3PO)
matouch0
Newbie
9. 11. 2007   #4
-
0
-

no mam to postavené tak, že do té proměnné je uložen text z formuláře, který odešlu do databaze a pak mam stranku (je to muj blog) kde se ten článek ma zobrazit, prostě takovej hodně moc jednoduchej redakcni system, takže bych tu diktritiku dost potřeboval :-(

Nahlásit jako SPAM
IP: 78.108.96.–
hrach
~ Redaktor
+1
Boss
9. 11. 2007   #5
-
0
-

tak predne prestan pouzivat diakritku v natvu promennych.
za druhe, jakou mas verzi mysql?

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
matouch0
Newbie
9. 11. 2007   #6
-
0
-

To hrach : Ale vždyť já nepoužívám diakritiku v názvu proměnné, proměná se jmenuje text_clanku, a její hodnota je text z formuláře který už tu diakritiku obsahuje a to je ten problem, po kliknuti na tlacitko odeslat, ktere ten text ma zapsat do mysql (ta verze je 5.0.45) se zobrazi tahle chyba:

Incorrect string value: '\xEC\x9A\xE8\xF8\x9E' for column 'text_clanku' at row 1

(do formulare jsem zapsal toto: ě š č ř ž)

Nahlásit jako SPAM
IP: 78.108.96.–
hrach
~ Redaktor
+1
Boss
9. 11. 2007   #7
-
0
-

$zpráva = NULL;

;)

zkontroluj jestli mas tabulku/db vytvorenou v kodovani utf, dale zkus pouzit sql
SET NAMES 'utf8'

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
matouch0
Newbie
9. 11. 2007   #8
-
0
-

ajo ta zprava, dik :-D jj diky to set names pomohlo

Nahlásit jako SPAM
IP: 78.108.96.–
hrach
~ Redaktor
+1
Boss
12. 11. 2007   #9
-
0
-

To matouch : nz ;) jsem rád, že jsme to vyřešili :smile1:

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
Khamos0
Newbie
20. 11. 2007   #10
-
0
-

SET NAMES 'kodovani_tabulky'

Nahlásit jako SPAM
IP: 90.176.65.–
hrach
~ Redaktor
+1
Boss
20. 11. 2007   #11
-
0
-

To Khamos : trochu pozdě :)

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
Alucard
~ Anonymní uživatel
3 příspěvky
14. 12. 2007   #12
-
0
-

Zdravím,

mám podobný problém akurát, že mi nepomáha ani "set names" ani nič. Skúšal som už aj phpmyadmin, nastavovať charset na jednotlive stlpce a tabulky, skúšal som nastavovať aj cez prikazový riadok, skúšal som aj meniť znakové sady(utf-8,latin2,cp1250) ale stále nič. Zrejme to bude tým, že už do databázy sa mi dostávajú znaky ako napr.

è...
ale dáko mi nič nepomáha. Keď to napíšem v mysql riadku tak je všetko vporiadku ale ked to spustim zo skriptu už je zle.
V stránkach mám nastevené:
<meta http-equiv="content-type" content="text/html; charset=windows-1250">

a používam dáku starú verziu Dreamweaver MX(pre prípad či mi editor nemení charset skripov, čo by nemal lebo keď ich uložím na web tak je všetko vporiadku)

Nahlásit jako SPAM
IP: 195.168.176.–
Paja2
~ Moderátor
+2
Věrný člen
15. 12. 2007   #13
-
0
-
Nahlásit jako SPAM
IP: 88.146.215.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 1 host

Podobná vlákna

S.w.i.n.e - čeština — založil ondy13

Čeština v C++ — založil Pavel Szabo

Cestina — založil matouch

Čeština v C++ — založil vdolek

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý