Zdravím Vás všechny,
prosím o radu, je možné uložit přihlašovací údaje do databáze ("mysql.webzdarma.cz","xxx","xxx") aby člověk nemusel pokaždé měnit hodnoty na server u sebe doma a obráceně?
Zkoušel jsem to uložit do proměnné, ale vyhodí mi to hlášku: Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource
Je to dost otrava pokaždé přepisovat x spojení s databází ....
Děkuju
Máš na mysli asi něco takového:
$host="mysql.webzdarma.cz";
$user="vilajosefina.wz.cz";
$pw="heslo";
$db="vilajosefina";
if (strpos(' '.$_SERVER['REMOTE_ADDR'],"127.0.0.1")) {
$host="localhost";
$user="josefina";
$pw="domaciheslo";
$db="domacidb";
}
$link=mysql_connect($host, $user, $pw);
$hand=mysql_select_db($db,$link);
Samozřejmě je to jen 1x v includovaném souboru.
Já bych se bál že to pak někomu pošlu a vyzradim zároven heslo na lokál i na web. Radši mam dva soubory, něco jako
local-mysql.php
wz-mysql.php
includuju mysql.php a když to uploaduju tak si to přejmenuju. Je to kompromis no, je to rychlejší než přepisovat hesla ale pomalejší než to mít v tom souboru oboje natvrdo.
R.U.R.: Nic ti nebrání určit jméno includovaného souboru podle umístění:
include (strpos(' '.$_SERVER['REMOTE_ADDR'],"127.0.0.1")) ? sql_local.php : sql_wz.php;
___
Ale radši se rovnou přiznám. Já normálně hodnoty přepisuju. Přecejen..config nahraju jednou a pak do něj nemusím sahat - nahrávám jen změněné soubory, ne všechno.
Jenže heslo od lokální databáze není nikomu nic platné, protože se do tvé databáze nedostane přes firewall a přes MySQL autentizaci (obvykle je vázána na IP, zpravidla 127.0.0.1). Takže ani s heslem se nedostane přes 2 bariéry.
Kit: já vím, problém je spíš s opačnou situací...
Freeze: tohle řešení se mi zamlouvá, dík za nápad :-)
Jen dotaz? Proč použiváte strpos(). Ono stačí i přímé porovnání.
include ($_SERVER['REMOTE_ADDR'] == "127.0.0.1") ? sql_local.php : sql_wz.php;
Protože původně jsem to měl takto:
strpos(' '.$_SERVER['REMOTE_ADDR'],"192.168.1.")
což by při běžném porovnání neobstálo.
Kit: Tak to jo. Pokud jde o část, pak strpos. Pokud o celek, pak přímo. Akorát rypnutí. Poslední dobou nějak často používám funkci strpos v podmínce a narazil poněkud na trable s hodnocením podmínky. Nějak mi vyhazoval odlišné výsledky s použitím operátoru identity a bez něj. A to i přesto, že hledaný výraz se nacházel na 1> pozici.
Takže bych raději použil zápis (strpos(' '.$_SERVER['REMOTE_ADDR'],"192.168.1.")!==false)
Výsledek strpos() je integer, asi bychom ho mohli podle toho vyhodnocovat. Takže ještě lépe takto:
strpos(' '.$_SERVER['REMOTE_ADDR'],'192.168.1.')>0
nebo takto:
strpos(' >'.$_SERVER['REMOTE_ADDR'],'>192.168.1.')>0
dobry den! Moc bych prosil o radu, jak muzu na importovat sql soubor na phpmyadmin ,jelikoz tam vidim jenom export na ic.cz je to jednochy ale jsem me pritahla nabidka tech 500 MB volnyho prostoru!
<HTML>V levém menu je ikonka SQL (třetí zleva). Ta otevře SQL okno, kde už vidíte možnost importu.</HTML>