WebSite X5Help Center

 
Tommaso Tarallo
Tommaso Tarallo
User

Collegamento ad un database (incluso in Website) e memorizzazione su array in php  it

Auteur : Tommaso Tarallo
Visité 1205, Followers 1, Partagé 0  

Salve,

avrei necessità di richiamare un database (con i parametri incluso nel programma), estrarre valori da una intera colonna e memorizzarle in un array.

Già ho il databse viewer ma io vorrei eleborare questi dati inserendo opportune query.

Qualcuno sà indicarmi il codice?

Posté le
9 RéPONSES - 1 UTILES - 1 CORRECT
Tommaso Tarallo
Tommaso Tarallo
User
Auteur

dal altri post ho trvato questo codice per visualizzare l'ultimo valore di una tabella:

<?php
require_once("res/x5engine.php");
$qchiave = array_keys($imSettings['databases']);
$qdati = getDbData($qchiave[0]);
$host = $qdati['host'];
$db_user = $qdati['user'];
$db_psw = $qdati['password'];
$db_name = $qdati['database'];
$qfolder = $imSettings['general']['public_folder'];
$db = new mysqli ($host, $db_user, $db_psw, $db_name);
$db ->autocommit(FALSE);
if ($db->connect_error) { die("Connessione fallita: " . $db->connect_error); }
$tabella="skill";//Da personalizzare
$sql= "SELECT * FROM $tabella ORDER BY id DESC LIMIT 1";
$result = $db->query($sql);
$row = $result->fetch_assoc();
$num= $row['num'];
$db->close();
?>

a parte la query SQL che so modificare, come modificare le ultime righe di codice?

Grazie!

Lire plus
Posté le de Tommaso Tarallo
Giorgio C.
Giorgio C.
User

Devi togliere l'asterisco perché così selezioni tutti i dati. Al suo posto metti il nome del campo dei dati che vuoi estrarre. Saranno contenuti tutti nell'array $row.

Lire plus
Posté le de Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Auteur

ciao giorgio, grazie sempre del tuo prezioso aiuto ma a quanto parre non si stabilisce la connessione al database e quindi non mi và visualizzare nulla. Ecco il codice che ho modificato:

<?php
require_once("res/x5engine.php");
$qchiave = array_keys($imSettings['databases']);
$qdati = getDbData($qchiave[0]);
$host = $qdati['host'];
$db_user = $qdati['user'];
$db_psw = $qdati['password'];
$db_name = $qdati['database'];
$qfolder = $imSettings['general']['public_folder'];
$db = new mysqli ($host, $db_user, $db_psw, $db_name);
$db ->autocommit(FALSE);
if ($db->connect_error) { die("Connessione fallita: " . $db->connect_error); }
$tabella="prova"; //Nome della tabella
$colonna="valorescelto"; // Nome della colonna
$sql= "SELECT $colonna FROM $tabella";
$result = $db->query($sql);
$B = $result->fetch_assoc(); //Array che contiene i dati

// Conteggio del numero totale dei valori contenenti nella variabile a
$a = count($B);

for ($i = 0; $i < $a; $i++)
{
$b=$B[$i];
echo "Il valore di posto $i è $b \n";
}


$db->close();
?>

Lire plus
Posté le de Tommaso Tarallo
Giorgio C.
Giorgio C.
User

 L'istruzione echo é sbagliata

metti questa

echo "Il valore di posto". $i." è ".$b." \n";

Lire plus
Posté le de Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Auteur

mi stampa solo lo zero (primo indice dell'array) e poi basta...

Lire plus
Posté le de Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Auteur

non saprei quale sia l'errore

Lire plus
Posté le de Tommaso Tarallo
Giorgio C.
Giorgio C.
User

<?php
require_once("res/x5engine.php");
$qchiave = array_keys($imSettings['databases']);
$qdati = getDbData($qchiave[0]);
$host = $qdati['host'];
$db_user = $qdati['user'];
$db_psw = $qdati['password'];
$db_name = $qdati['database'];
$qfolder = $imSettings['general']['public_folder'];
$db = new mysqli ($host, $db_user, $db_psw, $db_name);
$db ->autocommit(FALSE);
if ($db->connect_error) { die("Connessione fallita: " . $db->connect_error); }
$tabella="skill";
$campo="num";
$sql= "SELECT id, $campo FROM $tabella ";
$result = $db->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<br>Il valore di posto". $row["id"]. " è ".$row["num"] ;
}} else {echo "0 risultati";}$db->close();
?>

Lire plus
Posté le de Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Auteur

grazie Giorgio, funziona perfettamente: però vedi che la terza ultima riga si deve correggere questo:

echo "<br>Il valore di posto". $row["id"]. " è ".$row[$campo] ;

Lire plus
Posté le de Tommaso Tarallo