RISOLTO Problema di esecuzione di uno script php in locale.

Stato
Discussione chiusa ad ulteriori risposte.

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
Buongiorno,
sto provando a testare uno script php (non scritto da me) in locale utilizzando Xampp, questo script non è altro che un sito web. Ho quindi creato il database tramite phpmyadmin, ho creato la cartella "nomesito" in htcdoc, in cui ho caricato tutti gli script, quindi ora sia il database che la cartella locale comunicano tra loro.
Il problema è che, quando digito l'indirizzo "localhost/nomesito/" anziché ottenere il risultato attesto, ottengo questa bruttissima schermata, come se il sito non venisse formattato correttamente, da cosa può dipendere? Grazie.
Immagine.png
 
Ultima modifica da un moderatore:

tomm891

Utente Attivo
355
136
Hardware Utente
CPU
i5 9600k
Dissipatore
Corsair H55i
Scheda Madre
Asus Tuf z390m
Hard Disk
Samsung
RAM
16GB HyperX
Scheda Video
MSI GTX980ti
Alimentatore
Cooler Master G750m
Case
Corsair Air 240
Sistema Operativo
Windows 10 Pro
Controlla che tutti gli script e css vengano caricati correttamente usando il tasto F12 (mentre sei nel browser) per aprire ispeziona elementi.
 

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
Ciao tommasov, ho controllato ciò che mi hai chiesto. In pratica quando clicco sul collegamento del foglio di stile di un elemento, anziché caricarmi il codice mi esce una pagina con scritto "oggetto non trovato". Ho controllato nella cartella del sito, e seguendo il percorso richiamato, i file ci sono. Ho sbagliato qualcosa?

Ho caricato lo script anche su un webhost online e funziona correttamente.
 
  • Mi piace
Reactions: tomm891

tomm891

Utente Attivo
355
136
Hardware Utente
CPU
i5 9600k
Dissipatore
Corsair H55i
Scheda Madre
Asus Tuf z390m
Hard Disk
Samsung
RAM
16GB HyperX
Scheda Video
MSI GTX980ti
Alimentatore
Cooler Master G750m
Case
Corsair Air 240
Sistema Operativo
Windows 10 Pro
Riesci a mandarmi il sorgente renderizzato dal browser? Premi CTRL+U (FF e Chrome) e mandamelo.
 

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
Ti ho allegato il codice sorgente. Sembra essere un problema di riferimenti a percorsi che non vengono trovati o il cui accesso non è autorizzato.
 

Allegati

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
No, non funziona nessuno di quei collegamenti.
Perché in teoria dovrebbero essere così strutturati: http://localhost/MIOSITO/templates/frontend/dark-magenta/css
In quanto i file del sito si trovano tutti nella cartella "MIOSITO" e non direttamente in htdocs(localhost), come si aspetta XAMPP.
Non capisco come si modificano quei percorsi, sto googlando un po' dappertutto e cercando su stackoverflow, ma non riesco a trovare la soluzione.
 

tomm891

Utente Attivo
355
136
Hardware Utente
CPU
i5 9600k
Dissipatore
Corsair H55i
Scheda Madre
Asus Tuf z390m
Hard Disk
Samsung
RAM
16GB HyperX
Scheda Video
MSI GTX980ti
Alimentatore
Cooler Master G750m
Case
Corsair Air 240
Sistema Operativo
Windows 10 Pro
..in che senso non capisci come si modificano? Come generi quel codice html?
 

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
Ci sarà una qualche variabile da definire, in un qualche file php, per far capire a XAMPP che la radice del sito non è localhost, ma localhost/MIOSITO. Solo che non so dove mettere mani.
 

tomm891

Utente Attivo
355
136
Hardware Utente
CPU
i5 9600k
Dissipatore
Corsair H55i
Scheda Madre
Asus Tuf z390m
Hard Disk
Samsung
RAM
16GB HyperX
Scheda Video
MSI GTX980ti
Alimentatore
Cooler Master G750m
Case
Corsair Air 240
Sistema Operativo
Windows 10 Pro
XAMPP (apache), non influisce sulla variabile PHP che stampa "templates/frontend/dark-magenta/". Con cosa generi l'output HTML? Facci vedere un esempio del codice PHP che stampa la pagina.
 

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
La radice di quel collegamento è localhost/, invece dovrebbe essere miosito/...il fatto che la radice sia localhost/ non l'ho impostato io, ma lo fa di default il server virtuale. Secondo me questo è il problema.

Da quanto ho capito, XAMPP richiede che l'albero di file e cartelle del sito locale sia posizionato nella cartella htdocs, che poi è il localhost, senza sottocartelle; questo vincolo è parametrizzato nel file di configurazione....ma se per comodità e ordine, volessi avere il mio sito in una sotto cartella di htdocs, come faccio? Perché nella cartella htdocs sono già presenti altri script di XAMPP, sarebbe un casino.

Comunque, ti posto il codice di index.php, ma non ho capito a cosa può essere utile:
PHP:
<?php
define('_VALID', true);
require 'include/config.php';
require 'include/function_global.php';
require 'include/function_smarty.php';

$sql_add    = NULL;
$sql_delim    = ' WHERE';
if ( $config['show_private_videos'] == '0' ) {
    $sql_add   .= $sql_delim. " type = 'public'";
    $sql_delim    = ' AND';
}

$sql_add       .= $sql_delim. " active = '1'";

$sql            = "SELECT VID, title, duration, addtime, thumb, thumbs, viewnumber, rate, likes, dislikes, type, hd
                   FROM video" .$sql_add. " ORDER BY viewtime DESC LIMIT " .$config['watched_per_page'];
$rs             = $conn->execute($sql);
$viewed_videos  = $rs->getrows();
$viewed_total   = count($viewed_videos);
$sql            = "SELECT VID, title, duration, addtime, thumb, thumbs, viewnumber, rate, likes, dislikes, type, hd
                   FROM video" .$sql_add. " ORDER BY addtime DESC LIMIT " .$config['recent_per_page'];
$rs             = $conn->execute($sql);
$recent_videos  = $rs->getrows();

$smarty->assign('errors',$errors);
$smarty->assign('messages',$messages);
$smarty->assign('menu', 'home');
$smarty->assign('index', true);
$smarty->assign('viewed_total', $viewed_total);
$smarty->assign('viewed_videos', $viewed_videos);
$smarty->assign('recent_videos', $recent_videos);
$smarty->assign('self_title', $seo['index_title']);
$smarty->assign('self_description', $seo['index_desc']);
$smarty->assign('self_keywords', $seo['index_keywords']);
$smarty->loadFilter('output', 'trimwhitespace');
$smarty->display('header.tpl');
$smarty->display('errors.tpl');
$smarty->display('messages.tpl');
$smarty->display('index.tpl');
$smarty->display('footer.tpl');
?>
Post automaticamente unito:

Come volevasi dimostrare, ora ho provato a spostare tutti i file e le cartelle di MIOSITO in htdocs, e il problema dei collegamenti si è risolto, il sito funziona correttamente. Ma questa soluzione non mi piace.
Post automaticamente unito:

AGGIORNAMENTO: ho cancellato il db, cancellato la cartella MIOSITO e tutti i documenti all'interno, ho ricreato tutto da zero. Ora quando mi collego a localhost/MIOSITO carica la pagina correttamente, ma c'è un altro problema, tutte le sottopagine del sito non le trova, mi restituisce solo una pagina di errore "Oggetto non trovato - Error 404".
Inoltre, questo script ha un backend, al quale mi collego digitando localhost/MIOSITO/siteadmin, succede che quando mi collego la prima volta si apre correttamente la pagina di login, inserisco le credenziali, ma quando clicco su "Entra" mi spara una pagina "HTTP ERROR 500", da quel momento in poi, se provo ad accedere alla pagina di login del backend, mi da sempre questo errore, non dandomi nemmeno la possibilità di inserire le credenziali di accesso.

Non capisco la ragione di questi comportamenti, mi potete aiutare?
Post automaticamente unito:

Credo che il problema sia sempre lo stesso, XAMPP non vede la radice del mio sito in MIOSITO/ ma sempre in localhost/
Post automaticamente unito:

Dalla documentazione dello script, si legge che bisogna impostare il "base url" del sito in un file di configurazione della cartella include, essendo in locale, ho impostato "http://localhost/miosito/", ma questa scelta non sortisce alcun effetto, posso anche scrivere "pippo", ma non cambia nulla.
 
Ultima modifica:

tomm891

Utente Attivo
355
136
Hardware Utente
CPU
i5 9600k
Dissipatore
Corsair H55i
Scheda Madre
Asus Tuf z390m
Hard Disk
Samsung
RAM
16GB HyperX
Scheda Video
MSI GTX980ti
Alimentatore
Cooler Master G750m
Case
Corsair Air 240
Sistema Operativo
Windows 10 Pro
Guarda qui dentro $smarty->display('header.tpl'); Mandami il codice di header.tpl.

Ti ripeto che la virtual directory localhost di apache è giusto che punti sulla root di tutto. Controlla i file config vari del tuo framework (magari svelaci che framework è? Prestashop?). Quando parli del "base_url" è la strada giusta, quella è la costante (o variabile, dovrei vedere il config) che molto probabilmente viene stampata.
 
Ultima modifica:

nostrano

Utente Attivo
348
40
Hardware Utente
CPU
Inte Core i7-8700K @3.7/4.7Ghz
Dissipatore
Arctic Liquid Freezer 240
Scheda Madre
Asrock Z370M Pro4
Hard Disk
SSD 2,5 250GB Samsung 850EVO + HDD 3,5 1TB Seagate Barracuda
RAM
DDR4 16GB 3200 C15 GSkill RipV K2
Scheda Video
Palit GTX1060 6GB JetStream
Monitor
Asus VC239H Monitor 23"
Alimentatore
Corsair TX650M
Case
Zalman Z9 Neo
Internet
TIM CONNECT FIBRA 30/3 Mb/s
Sistema Operativo
Windows 10 Pro
Il framework credo sia Bootstrap.
Quindi devo necessariamente mettere tutti i file nella cartella definita come localhost? Non ho alternative? In effetti, i collegamenti funzionano correttamente se i file sono inseriti in htdocs. E quando si hanno più progetti come si fa a gestirli tutti insieme con Apache?
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando