- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- Richiamare contenuto da tabelle mysql
-
Richiamare contenuto da tabelle mysql
buongiorno, ho appena migrato un sito php su un altro hosting e con il relativo nuovo database. prima di ciò, il sito usava lo stesso database di un altro sito dato che era la versione italiana. ho installato il backup di quel database ma alcuni contenuti non vengono visualizzati e l'area riservata non funziona correttamente. ovviamente nel sito trasferito ho settato i nuovi parametri di accesso al nuovo db ma ancora non capisco dove e cosa sbaglio.
inoltre cosa ho fatto? ho settato la versione php al 5.2 ma ancora nulla
ecco un esempio pratico di quanto sopra descritto
engineering.palagio.it/tipologie2.php?category=1 (sito italiano funzionante )
palagiousa.com/products_detail.php?category=1 (sito trasf. su nuovo hosting)spero che riusciate ad illuminarmi, grazie mille.
-
Puoi postare codice SQL, PHP e tabella?
-
@meis said:
Puoi postare codice SQL, PHP e tabella?
non posso postare tutto il codice sql perchè ci sono email all'interno e altri dati sensibili.
posto la parte relativa alla pagina che vi ho elencato---- Struttura della tabella `PA_prodotti` -- CREATE TABLE IF NOT EXISTS `PA_prodotti` ( `id_p` int(11) NOT NULL AUTO_INCREMENT, `nome` varchar(200) NOT NULL DEFAULT '', PRIMARY KEY (`id_p`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ; -- -- Dump dei dati per la tabella `PA_prodotti` -- INSERT INTO `PA_prodotti` (`id_p`, `nome`) VALUES (1, 'Terra ONE'), (2, 'Terra TWO'), (3, 'Terra FLAT'), (4, 'Terra MODUS'), (5, 'Terra PLUS'), (6, 'Terra STRIP'), (7, 'Terra BRICK'), (8, 'Terra BLOCK'), (9, 'Terra SCREEN'), (10, 'Terra TUBE'), (11, 'Terra OVAL'), (12, 'Terra WING'), (13, 'Terra SLOPE'), (14, 'Terrangle SMOOTH'), (15, 'Terraround SMOOTH'), (16, 'Terrangle STRIP'), (17, 'Terraround STRIP'), (18, 'Terrangle EL'), (19, 'Terra SILL'), (20, 'Marcapiano'), (21, 'Lavorazione a quartabono'), (22, 'Cornice'), (23, 'Bended Terra One'), (24, 'Auditorium'); -- --------------------------------------------------------
sorgente php
-
Non ho guardato TUTTO il PHP, ma intanto ti consiglio di cambiare tutti i $category in $_GET['category']. Anzi, ancora meglio, all'inizio, dopo l'include del top, metti
[PHP]
$category = $_GET['category'];
[/PHP]Dimmi se vedi differenze
-
@meis said:
Non ho guardato TUTTO il PHP, ma intanto ti consiglio di cambiare tutti i $category in $_GET['category']. Anzi, ancora meglio, all'inizio, dopo l'include del top, metti
[PHP]
$category = $_GET['category'];
[/PHP]Dimmi se vedi differenze
non ci posso credere...funziona!
se non ti scoccia mi spiegheresti cosa è successo?
-
Ci sono 2 modi (se qualcuno di esperto vede che sbaglio mi corregga) di passare informazioni tra le pagine.
Questi metodi sono chiamati POST e GET.
Il metodo POST può essere ottenuto grazie ad un formulario, il metodo GET, oltre che da un formulario può essere fatto a mano.
Nello specifico, quando trovi, nell'URL:
pagina.estensione?nome=valore&nome2=valore2
tutto ciò che c'è dopo il "?" viene memorizzato (in PHP) nella variabile $_GET, che è a tutti gli effetti un array associativo, come se avessi scritto:
$_GET = array("nome" => "valore", "nome2" => "valore2");Quindi, visto che nella tua pagina c'è
?category=1
non è $category che ha valore 1, ma $_GET['category'].
per quanto riguarda il fatto che prima funzionava e ora no, non ne ho la più pallida idea xD
-
ma sopratutto perchè nell'altro hosting funzionava e nel nuovo no, ho anche settato il php alla versione 5.2. c'è da dire che è un sito che è stato fatto davvero tanto tanto tempo fa. cmq grazie davvero
comunque ho ancora qualche problemino qui palagiousa.com/login/login_en.php?from=
sorgente pastebin.com/V7ApZpMt
-
Cosa non è giusto? l'ho confrontato con l'"originale" e mi sembra uguale
-
se provi a fare un login non succede nulla, nè l'accesso nè la segnalazione di errore
e anche qui purtroppo palagiousa.com/references.php
-
Non ne sono per nulla sicuro, ma in una riga c'è scritto:
[PHP]if ($hash==$HTTP_GET_VARS[passwd]){
user_set_tokens($HTTP_GET_VARS[login],$id_logged);
header("location: $HTTP_GET_VARS[from]");
exit;[/PHP]Sostituiscilo in
[PHP]
if ($hash==$HTTP_GET_VARS[passwd]){
user_set_tokens($HTTP_GET_VARS[login],$id_logged);
header("location: ".$_GET['from']);
exit;
[/PHP]
-
no, non cambia nulla