Back to top

Autore Topic: Passaggio variabile tra due pagine JFactory  (Letto 2196 volte)

Offline KolfKord

  • Esploratore
  • **
  • Post: 59
    • Mostra profilo
Passaggio variabile tra due pagine JFactory
« il: 08 Set 2011, 12:38:02 »
Buongiorno ragazzi, sono un po arruginito in JFactory... Mi manca solo un passaggio per completare il pagamento tramite paypal nel mio sito web. Non ricordo e non riesco a trovare come passare una variabile ad un'altra pagina...
 Nel file moduloiscrizione.php ci ho messo, dopo la insert, $ID = $db->insertid();
 In questo modo dovrebbe restiturmi l'ultimo ID appena inserito. Il problema ora risiede nel passare tale ID alla pagina ok.php... :(

mau_develop

  • Visitatore
Re:Passaggio variabile tra due pagine JFactory
« Risposta #1 il: 08 Set 2011, 13:26:47 »
versione joomla?
che cos'è..un modulo? ...un componente?

in che punto dell'mvc vuoi fare quello che dici? nella view, nel model, nel controller?

M.

Offline KolfKord

  • Esploratore
  • **
  • Post: 59
    • Mostra profilo
Re:Passaggio variabile tra due pagine JFactory
« Risposta #2 il: 08 Set 2011, 14:17:34 »
versione joomla?
che cos'è..un modulo? ...un componente?

in che punto dell'mvc vuoi fare quello che dici? nella view, nel model, nel controller?

M.

La versione di Joomla è la 1.5.22
Ho creato un componente.
Ho il seguente codice:
Codice: [Seleziona]
function saveData() {
$nome=JRequest::getVar( 'partecipantenome','none');
$cognome=JRequest::getVar( 'partecipantecognome','none');
$indirizzo=JRequest::getVar( 'partecipantevia','none');
$cap=JRequest::getVar( 'partecipantecap','none');
$citta=JRequest::getVar( 'partecipantecitta','none');
$provincia=JRequest::getVar( 'partecipanteprovincia','none');
$telefono=JRequest::getVar( 'partecipantetel','none');
$cellulare=JRequest::getVar( 'partecipantecel','none');
$fax=JRequest::getVar( 'partecipantefax','none');
$email=JRequest::getVar( 'partecipanteemail','none');
$dataNascita=JRequest::getVar( 'nascitaanno','none') . "-" . JRequest::getVar( 'nascitamese','none') . "-".    JRequest::getVar( 'nascitagiorno','none');
$luogoNascita = JRequest::getVar( 'partecipanteluogonascita','none');
$titoloStudio=JRequest::getVar( 'partecipantestudio','none');
$dataPreferenzaCorso = JRequest::getVar( 'corsoanno','none') . "-" . JRequest::getVar( 'corsomese','none') . "-".    JRequest::getVar( 'corsogiorno','none');
$professione=JRequest::getVar( 'partecipanteprofessione','none');
$pivacf=JRequest::getVar( 'partecipantepiva','none');
$pagamento=JRequest::getVar( 'modalitaPagamento','none');
$totale=JRequest::getVar( 'totale','none');
$comecihatrovato =JRequest::getVar( 'comecihatrovato','none');

$corsi="";
if(JRequest::getVar( 'corsoB', 'none' ) != "none" && JRequest::getVar( 'corsoBquantita', 'none' ) != "0")
{
$corsi .="B,".JRequest::getVar( 'corsoBquantita', 'none' ). "\n"    ;
}

if(JRequest::getVar( 'corso1', 'none' ) != "none" && JRequest::getVar( 'corso1quantita', 'none' ) != "0")
{
$corsi   .=    "1," .JRequest::getVar( 'corso1quantita', 'none' ). "\n"    ;
}

if(JRequest::getVar( 'corso2', 'none' ) != "none" && JRequest::getVar( 'corso2quantita', 'none' ) != "0")
{
$corsi   .=    "2," .JRequest::getVar( 'corso2quantita', 'none' ). "\n"    ;
}

if(JRequest::getVar( 'corsoB1', 'none' ) != "none" && JRequest::getVar( 'corsoB1quantita', 'none' ) != "0")
{
$corsi   .=    "B1" .JRequest::getVar( 'corsoB1quantita', 'none' ). "\n"    ;
}

if(JRequest::getVar( 'corso12', 'none' ) != "none" && JRequest::getVar( 'corso12quantita', 'none' ) != "0")
{
$corsi   .=    "12," .JRequest::getVar( 'corso12quantita', 'none' ). "\n"    ;
}

if(JRequest::getVar( 'corsoB12', 'none' ) != "none" && JRequest::getVar( 'corsoB12quantita', 'none' ) != "0")
{
$corsi   .=    "B12," .JRequest::getVar( 'corsoB12quantita', 'none' ). "\n";
}

$db =& JFactory::getDBO();
$query="INSERT INTO `#__courses_subscribe` (`nome`, `cognome`, `indirizzo`, `cap`, `citta`, `provincia`, `telefono`, `cellulare`, `fax`, `email`, `data_nascita`, `luogo_nascita`, `titolo_studio`, `professione`, `piva_cf`, `data_partecipazione_corso`, `ordine`, `totale`, `modalita_pagamento`, `come_ci_ha_trovato`) VALUES ('$nome', '$cognome', '$indirizzo', '$cap', '$citta', '$provincia', '$telefono', '$cellulare', '$fax', '$email', '$dataNascita', '$luogoNascita', '$titoloStudio', '$professione', '$pivacf', '$dataPreferenzaCorso', '$corsi', '$totale', '$pagamento', '$comecihatrovato')";
$ID = $db->insertid();



$db->setQuery( $query );
$result=$db->query();
if(! $result)
{
    return false;
}
else
{
    return true;
}
}

Come puoi notare appena dopo la insert ho messo: $ID = $db->insertid();

Ho provato nell'altra pagina a mettere $IDlast = JRequest::getVar("$ID"); ma me la visualizza NULL...

Codice: [Seleziona]
<?php
// Impedisce l'accesso diretto al file
defined('_JEXEC') or die('Restricted access');
//require JPATH_COMPONENT_ADMINISTRATOR . DS . 'helpers' . DS . 'gestionecorsi.php';
?>

<?php
    $IDlast 
JRequest::getVar("$ID");
       
var_dump($IDlast);
       die();
« Ultima modifica: 08 Set 2011, 14:54:13 da KolfKord »

Offline KolfKord

  • Esploratore
  • **
  • Post: 59
    • Mostra profilo
Re:Passaggio variabile tra due pagine JFactory
« Risposta #3 il: 08 Set 2011, 16:04:49 »
Nessuno?...

mau_develop

  • Visitatore
Re:Passaggio variabile tra due pagine JFactory
« Risposta #4 il: 08 Set 2011, 17:20:12 »
"none"
---------------------
che è none?

"INSERT INTO `#__courses_subscribe` (`nome`, `cognome`, `indirizzo`
--------------------------------------------------------------------------
scusa che id vorresti ti ritornasse se non c'è?

poi non ho capito DOVE stai facendo quella "cosa"
poi non ho capito perchè la fai così e non usando il CRUD di joomla
poi non ho capito se lo metti online... perchè se lo fai così te lo buca pure il mio nipotino...

M.


« Ultima modifica: 08 Set 2011, 17:22:51 da mau_develop »

Offline Katmandu

  • Nuovo arrivato
  • *
  • Post: 7
  • non datemi consigli ... sbaglio da solo
    • Mostra profilo
Re:Passaggio variabile tra due pagine JFactory
« Risposta #5 il: 09 Set 2011, 21:37:35 »

prima di fare la getVar nel secondo modulo devi comunque
fate la setVar nel primo (guardando il codice che hai postato
non mi sembra di vederla)
inoltre la

$ID = $db->insertid();

va messa **dopo** la

$db->setQuery( $query );
$result=$db->query();

senno', non avendo inserito nulla, non ti ritorna nulla

sulla sicurezza non saprei dirti ..



mau_develop

  • Visitatore
Re:Passaggio variabile tra due pagine JFactory
« Risposta #6 il: 09 Set 2011, 22:04:52 »
no, non è necessario, penso voglia recuperarle da un post... il problema è proprio che quella tabella così come è scritta l'id non ce l'ha.

M.

Offline Katmandu

  • Nuovo arrivato
  • *
  • Post: 7
  • non datemi consigli ... sbaglio da solo
    • Mostra profilo
Re:Passaggio variabile tra due pagine JFactory
« Risposta #7 il: 10 Set 2011, 12:16:02 »
ovviamente vado ad intuito, al buio, e potrei sbagliare
ma secondo me la tebella ha un id  auto increment,
e per questo non viene citato in insert;

Attilio

mau_develop

  • Visitatore
Re:Passaggio variabile tra due pagine JFactory
« Risposta #8 il: 10 Set 2011, 12:41:59 »
... comunque sia non vale nemmeno la pena di perderci tempo, quello è un casino non uno script per joomla.... bastano 10 righe in tutto per fare quella cosa, se poi la fai "bucabile" scendiamo a 5 righe :)

$ID = $db->insertid();

va messa **dopo** la

$db->setQuery( $query );
$result=$db->query();
----------------------------------------------
si cmq qs è vero.....



 



Web Design Bolzano Kreatif