Autor | Zpráva | ||
---|---|---|---|
Erixx Profil |
#1 · Zasláno: 15. 10. 2012, 18:30:36
Zdravím vás,
prosím poradte mi, jak vnořit příkaz require "db.php"; místo $dbLink = new mysqli('localhost', 'db', 'pass', 'db'); do tohoto scriptu na uload files, abych se v něm připojil k databázi pouze souborem db.php a nemusel vypisovat údaje k přihlášení k databázi. Děkuji moc za radu. <?php // Check if a file has been uploaded if(isset($_FILES['uploaded_file'])) { // Make sure the file was sent without errors if($_FILES['uploaded_file']['error'] == 0) { // Connect to the database $dbLink = new mysqli('localhost', 'db', 'pass', 'db'); if(mysqli_connect_errno()) { die("MySQL connection failed: ". mysqli_connect_error()); } // Gather all required data $name = $dbLink->real_escape_string($_FILES['uploaded_file']['name']); $mime = $dbLink->real_escape_string($_FILES['uploaded_file']['type']); $data = $dbLink->real_escape_string(file_get_contents($_FILES ['uploaded_file']['tmp_name'])); $size = intval($_FILES['uploaded_file']['size']); // Create the SQL query $_POST[cas]=date(" j.n.Y "); $query = " INSERT INTO `download` ( `name`, `mime`, `size`, `data` ) VALUES ( '{$name}', '{$mime}', {$size}, '{$data}' )"; // Execute the query $result = $dbLink->query($query); // Check if it was successfull if($result) { echo '<b>OK, saved.'; } else { echo 'Error! Failed to insert the file' . "<pre>{$dbLink->error}</pre>"; } } else { echo 'An error accured while the file was being uploaded. ' . 'Error code: '. intval($_FILES['uploaded_file']['error']); } // Close the mysql connection $dbLink->close(); } else { echo 'Error!'; } ?> |
||
Draffix Profil * |
#2 · Zasláno: 15. 10. 2012, 23:34:29
Pokud chápu dobře, tak stačí v db.php nadefinovat pouze konstanty např.:
if ($_SERVER["SERVER_ADDR"]=="127.0.0.1") { define("SQL_HOST","localhost"); define("SQL_DBNAME","jmenoDatabaze"); define("SQL_USERNAME","jmeno"); define("SQL_PASSWORD","heslo"); } else { ... } A pak v kódu volat: require "db.php"; $dbLink = new mysqli('SQL_HOST', 'SQL_DBNAME', 'SQL_PASSWORD', 'SQL_USERNAME'); |
||
shaggy Profil |
#3 · Zasláno: 15. 10. 2012, 23:42:55
Draffix:
Takto asi moc konštanty nezavolá: „$dbLink = new mysqli('SQL_HOST', 'SQL_DBNAME', 'SQL_PASSWORD', 'SQL_USERNAME');“ skôr: $dbLink = new mysqli(SQL_HOST, SQL_DBNAME, SQL_PASSWORD, SQL_USERNAME); |
||
Erixx Profil |
Mně jde o to, pokud je to vůbec u tohoto případu možné,
zbavit se v kodu tohoto řádku: $dbLink = new mysqli('localhost', 'db', 'pass', 'db'); require "db.php"; $dbLink = by měl být zachován, protože se ve scriptu níže poté znovu objevuje.
|
||
Draffix Profil * |
#5 · Zasláno: 16. 10. 2012, 08:29:20
Erixx:
Tak pak vytvoř spojení v v db.php a do nového souboru dej jen require db.php. V jednom budeš mít jak hodnoty pro připojení tak i samotné připojení a ve druhém pak s databází/souborem pracovat |
||
mimochodec Profil |
#6 · Zasláno: 16. 10. 2012, 09:25:26
Erixx:
> Mně jde o to, pokud je to vůbec u tohoto případu možné, > zbavit se v kodu tohoto řádku: Tak ten řádek dej ještě do toho db.php. Kde je problém? |
||
Erixx Profil |
#7 · Zasláno: 16. 10. 2012, 09:29:44
Draffix:
V souboru db.php mám klasicky napojení na databázi.
Ale nevím, jak mám uvedený script napojit na databázi přes require "db.php";
Ten autor napojuje na databázi právě pomocí mnou nechtěného řádku $dbLink = new mysqli('localhost', 'db', 'pass', 'db');
|
||
panther Profil |
#8 · Zasláno: 16. 10. 2012, 09:43:43
Erixx:
tak nechteny radek musi byt v db.php, kam podle nazvu souboru asi i patri. To uz tu nekdo psal. Pokud ho cely zkopirujes, tak v kodu za requirem bude v promenne $dbLink ono pripijeni k DB.
|
||
Erixx Profil |
#9 · Zasláno: 16. 10. 2012, 09:49:38
OK,
problém vyřešen přidáním $dbLink = new mysqli('localhost', 'db', 'pass', 'db'); přímo do db.php
Děkuju všem za pomoc! |
||
Draffix Profil * |
#10 · Zasláno: 16. 10. 2012, 09:53:15
Erixx:
Jak už psal panther, pokud do db.php vložíš skript pro připojení k databázi: $dbLink = new mysqli('localhost', 'db', 'pass', 'db'); tak pak když uvedeš require db.php tak už budeš mít přímé připojení bez nutnosti psát znovu tvůj nechtěný řádek (už bude v db.php) |
||
Erixx Profil |
#11 · Zasláno: 16. 10. 2012, 11:52:52
Draffix:
OK, už jsem to vyřešil přesně tímhle způsobem. Díky. |
||
Časová prodleva: 12 let
|
0