Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-01-2008, 16:36   #1
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
[mysql] problema selezione database

Ho alcuni problemi nella creazione di un database per un sito in php-mysql, questo è il codice della index.php:
Codice:
<? 
	require("interfaccia.inc.php");
	include("config.inc.php");
	top();
?>
<title>Questa</title>
<? middle(); ?>
<?
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$query = "SELECT id, data, titolo FROM news ORDER BY data DESC LIMIT 0,5";
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result))
{
    echo "<a href=\"view.php?id=$row[id]\">" . date("j/n/y", $row[data]) . " - $row[titolo]</a><br>";
    }
    mysql_close($db);
foot() ?>
Questo è il file config.ini.php:
Codice:
<?
	// parametri del database
	$db_host = "localhost";
	$db_user = "root";
	$db_password = "root";
	$db_name = "myDatabase";
	//password per inserimento articoli
	$password = "";
?>
ed il file interfaccia.php non serve per il nostro problema visto che riguarda la formattazione della pagina, infatti non prendete nemmeno in considerazione foot() top() e middle() create per questo scopo.

Il problema è il seguente, quando vado sulla index mi da:
Codice:
Errore nella selezione del database. Verificare i parametri nel file config.inc.php
Questo significa che si blocca nel punto:
Codice:
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
e quindi non riesce a caricare il database, sul file config.ini credo di aver messo tutto giusto però non saprei, dove posso aver sbagliato?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 28-01-2008, 19:43   #2
fencer2000
Member
 
Iscritto dal: Mar 2002
Città: Udine e ogni tanto Catania
Messaggi: 27
Prova questo codice che ti dice l'errore esatto:

Codice PHP:
mysql_select_db($db_name$db) or die(mysql_error()); 
Controlla anche eventuali maiuscole e minuscole e i permessi su quel database anche se è l'utente root di default dovrebbe avere tutti i permessi.
__________________
Mi son guardato allo specchio e mi sono accorto che non mi somigliavo
fencer2000 è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2008, 17:17   #3
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
grazie per avermi risposto ma era solo un'errore di distrazione nelle impostazioni di pass e account

Comunque c'è un'altro problema ora, la spiegazione è molto semplice, in pratica finche mi trovo sulla directory principale del sito tutto va bene perche riesco ad includere tranquillamente tutti i file php, ma se mi trovo in una sottodirectory questo non mi è possibile facendo

Codice:
<? require("../interfaccia.inc.php") ?>
Da notare ../ con cui se fossi stato in ambiente html sarebbe tornato nella directory madre, e quindi avrebbe trovato quello che cercato, ma in php come posso fare questo visto che cosi non funziona?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2008, 18:21   #4
fencer2000
Member
 
Iscritto dal: Mar 2002
Città: Udine e ogni tanto Catania
Messaggi: 27
Quote:
Originariamente inviato da Re Lothar Guarda i messaggi

Codice:
<? require("../interfaccia.inc.php") ?>
Manca un ; alla fine..se hai fatto copia e incolla forse l'errore è lì; altrimenti se hai fatto un require di un require allora devi sempre fare riferimento al file principale. Mi spiego meglio..se hai una struttura file e directory del tipo

./index.php
./moduli/modulo.php
./inc/funzioni.php

se nell'index.php fai

Codice PHP:
<?php require("./moduli/modulo.php"); ?>
e se vuoi includere nel file del modulo il file delle funzioni dovrai sempre partire da index.php e scrivere

Codice PHP:
<?php require("./inc/funzioni.php"); ?>
invece che, come potrebbe sembrare,

Codice PHP:
<?php require("../inc/funzioni.php"); ?>
__________________
Mi son guardato allo specchio e mi sono accorto che non mi somigliavo
fencer2000 è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2008, 20:08   #5
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
Aspetta il metodo tuo ./ non funge perche mi dice proprio fatal error ecc, ma nel mio metodo (../) la pagina la richiama correttamente (interfaccia.inc.php) ma non il css richiamato da quest'ultima.

La require copia il codice html del file incluso nella pagina corrente, e siccome nel file che richiama è presente un .css.
Siccome copia il codice una volta messo nella pagina corrente (presente in una sottodirectory in questo caso) l'indirizzo del css non è piu giusto ma dovrebbe anche lui essere ../file.css

Come posso fare in modo che il php cambi da solo questo indirizzo del file a seconda del livello di directory in cui ci si trova?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2008, 23:15   #6
fencer2000
Member
 
Iscritto dal: Mar 2002
Città: Udine e ogni tanto Catania
Messaggi: 27
Se ho capito bene ti servirebbe una funzione che cambi dinamicamente il percorso al css in base alla posizione dello script che lo include.

Che io sappia non esiste una funzione del genere..dovresti createla tu.
Puoi utilizzare la variabile d'ambiente $_SERVER["SCRIPT_NAME"] che restituisce il percorso allo script in esecuzione e in base al numero di / che incontri crearti il percorso a ritroso.

Codice PHP:
<?php
function getPath() {
    
$counter substr_count($_SERVER['SCRIPT_NAME'], "/"); //Conto le occorrenze
    
$path "./"//Imposto la cartella corrente come partenza
    
for($n=2;$n<=$counter;$n++) //parto dal livello inferiore alla root
        
$path .= "../";
    return 
$path;
}

echo 
getPath();
?>
Probabilmente necessita di qualche adattamento per il tuo caso.
__________________
Mi son guardato allo specchio e mi sono accorto che non mi somigliavo
fencer2000 è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2008, 09:13   #7
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
ho provato ad includere la funzione in pagine presenti in sottocartelle ma mi ritorna sempre ./ allora ho provato anche a fare
Codice:
echo $_SERVER['stile.css'];
Ma non mi stampa niente, dovrebbe essere questa la funzione che ritorna il path relativo giusto?
Comunque l'unico problema reale è proprio questo, trovare una funzione o variabile globale che mi dia il valore relativo del path della pagina attuale.
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2008, 09:49   #8
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
Ah ecco ho fatto cosi:
Codice:
	$url_script_name=$_SERVER["SCRIPT_NAME"];
	
	$directory = dirname($url_script_name);
In questo modo posso aggiungere ad ogni link la posizione della directory ($directory) seguita dal nome del file da collegare.
Però siccome gli url sono in html non posso unire le stringhe con il php, per caso li devo fare in php anche gli url (non so se si può ) oppure devo fare in modo di far ritornare la stringa nel codice html?
Se si come posso fare? grazie...
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2008, 19:42   #9
fencer2000
Member
 
Iscritto dal: Mar 2002
Città: Udine e ogni tanto Catania
Messaggi: 27
Quote:
Originariamente inviato da Re Lothar Guarda i messaggi
Ah ecco ho fatto cosi:
Codice:
	$url_script_name=$_SERVER["SCRIPT_NAME"];
	
	$directory = dirname($url_script_name);
In questo modo posso aggiungere ad ogni link la posizione della directory ($directory) seguita dal nome del file da collegare.
Però siccome gli url sono in html non posso unire le stringhe con il php, per caso li devo fare in php anche gli url (non so se si può ) oppure devo fare in modo di far ritornare la stringa nel codice html?
Se si come posso fare? grazie...
Puoi tranquillamente mischiare PHP e HTML.

Il codice per inserire il css potrebbe essere del tipo
Codice PHP:
<link href="<?php echo $directory."stile.css" ?>" rel="stylesheet" type="text/css" />
Però attenzione che $_SERVER["SCRIPT_NAME"] restituisce il percorso dello script corrente. Forse ti conviene crearti un array del tipo

Codice PHP:
<?php
   $BACK_PATH 
= array( => "./"=> "../"=> "../../");
   
$path $BACK_PATH[$numero_occorenze_slash]; //calcolato con la funzione che ti ho scritto prima
  
<link href="<?php echo $path."stile.css" ?>" rel="stylesheet" type="text/css" />
?>
P.S.: $_SERVER è una variabile d'ambiente di tipo array con alcuni elementi predefiniti tra cui $_SERVER["SCRIPT_NAME"]..se vai sul manuale di PHP puoi vedere quali sono questi elementi
__________________
Mi son guardato allo specchio e mi sono accorto che non mi somigliavo
fencer2000 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Boeing CST-100 Starliner: la NASA rende ...
hiop e TaDa uniscono le forze per trasfo...
Thermal Grizzly mostra il Ryzen 7 9850X3...
AMD Ryzen 'Olympic Ridge' Zen 6 per desk...
Donald Trump renderà pubbliche in...
Prezzo mai visto da mesi: ECOVACS DEEBOT...
Non solo S26, Samsung sta per lanciare a...
Windows 11 avrà a breve uno Speed...
Ask Intel: l'assistente IA che ti aiuta ...
Nasce Freedom.gov: il portale USA per ag...
Bose QuietComfort SC a 179,95€: ANC legg...
Attenzione ai conti: confermata falla sf...
30.000 Pa e lavaggio a 100°C: DREAME...
Nioh 3 vola oltre 1 milione di copie, la...
AMD Radeon RX 9060 XT: staccato (di molt...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v