2015-05-31 14 views
6

Sono bloccato con questo problema: Nessun database selezionato. Traggo gli stessi problemi pubblicati qui, ma dopo ore di lettura non riesco a capire perché il database non è selezionato. Ho creato un database job e una tabella job. Corro lo script con il server WAMP. Mi dispiace per la "domanda di tutti i giorni". Per favore aiuto!errore: Database non selezionato

<?php 

// load Smarty library 
require('C:/wamp/www/smarty-3.1.21/libs/Smarty.class.php'); 

$servername = "localhost"; 
$dbname = "job"; 

// Create connection 
$conn = mysqli_connect($servername, $dbname); 

// Check connection 
if (!$conn) { 
die("Connection failed: " . mysqli_connect_error()); 
} 

$smarty = new Smarty; 

$smarty->setTemplateDir('C:\wamp\www\app\templates'); 
$smarty->setCompileDir('C:\wamp\www\app\templates_c'); 
$smarty->setConfigDir('C:\wamp\www\app\configs'); 
$smarty->setCacheDir('C:\wamp\www\app\cache'); 


$rows = array(); 
$sql = "SELECT * FROM job"; 
$result = mysqli_query($conn, $sql); 

if (!$result) { 
    echo 'MySQL Error: ' . mysqli_error($conn); 
    exit; 
} 

while ($row = mysqli_fetch_assoc($result)) { 
    $rows[] = $row; 
    } 

$smarty->assign('output', $rows); 
$smarty->display('result.tpl'); 

mysqli_close($conn); 

?> 
+0

Is le credenziali del database giusto? –

+0

Questi non sono i parametri corretti per 'mysqli_connect'. Devi passare host, nome utente, password e quindi nome del database. –

+0

'mysqli_connect' richiede host, quindi nome utente, password e quindi nome db. Si prega di provare ad assegnare che –

risposta

13

Questi non sono i parametri corretti per mysqli_connect. Devi passare host, nome utente, password e quindi nome del database. Stai passando solo l'host e il nome del database, quindi non ti connetti correttamente.

6

mysqli_connect() richiede quattro parametri, che sono: -

host name, user name, password, database name (optional).

Quindi è necessario fornire tutti questi parametri. Se non lo fai, non puoi connetterti e otterrai degli errori.

Nota: - il nome del database è facoltativo è possibile utilizzare mysqli_select_db() per selezionare ulteriormente il database.

6

Ti manca alcuni parametri nel mysqli_connect function(), ecco come dovrebbe essere:

$dbHost = '127.0.0.1'; 
$dbUser = 'username'; 
$dbPass = 'password'; 
$dbDb = 'database'; 
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbDb); 
+0

la risposta più completa e chiara con un esempio funzionante. – Znik

Problemi correlati