Autor | Zpráva | ||
---|---|---|---|
Welton123 Profil |
Zdravím, mám v souboru nastavenou
$uzivatel = "Nick"; $odmena udaj z MySQL, která má v sobě text "Uživatel $uzivatel vyhral/a odmenu".
Problém je v tom, že to na pozici $uzivatel nedosadí promennou.
Nevíte prosím, jak to udělat? Předem děkuji |
||
Magnus123 Profil |
#2 · Zasláno: 20. 7. 2013, 16:58:39
Welton123:
Zřejmě máš na mysli proměnnou $uzivatel. V tomhle ti přímo neporadím, ale osobně bych to udělal tak, že bys v databázi měl třeba "Uživatel %s vyhral/a odmenu" a v PHP bys to vypsal takto: printf($odmena, $uzivatel); |
||
Welton123 Profil |
Ano, toto mi sice dosadí, ale když dám
$vyhra = printf($odmena, $uzivatel); tak se to neprovede. |
||
Magnus123 Profil |
#4 · Zasláno: 20. 7. 2013, 19:15:16
Welton123:
Funkce printf() výsledek rovnou vypisuje. Pokud chceš výsledek jen vrátit, použij funkci sprintf(). $vyhra = sprintf($odmena, $uzivatel); Pokud bys chtěl jako druhý parametr předat pole hodnot, použij vsprintf(). |
||
peta Profil |
http://php.net/manual/en/function.mysql-real-escape-string.php
Example #1 Simple mysql_real_escape_string() example (vcetne zabezpeceni php promenne proti sql hackovani, coz zrovna nepotrebujes) <?php // Connect $link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password') OR die(mysql_error()); // Query $query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'", mysql_real_escape_string($user), mysql_real_escape_string($password)); ?> |
||
aDAm Profil |
#6 · Zasláno: 22. 7. 2013, 12:19:30
peta: tvoje odpověď trošku mimo téma ne? Dotaz byl na to jak udělat sprintf a né select z databáze.
|
||
Časová prodleva: 11 let
|
0