script php e javascript

Stato
Chiusa ad ulteriori risposte.

Vera

Utente Attivo
3 Giu 2014
76
1
8
Ho questi due script, il secondo con l'alert mi visualizza il campo cdmate... e fino qui tutto bene. Ma quando vado a chiamare un nuovo javascript (planningPerMateria), con il successivo alert (vedi 3° script) non mi visualizza il codice materia. Come posso fare?

Grazie



1° script php:

HTML:
<form name='form1'><font color = "green"> Materia: </font>
<span id='box_materie'>
<select name="codice_materia" id='cdmate' onChange='Materia()'>
<option value="">Seleziona...</option></select>
</span>
</form>
 <input type='button' onclick='planningPerMateria("<?php  $sele = 'A'; ?>")' value=' Classi per materia ' style='width:140px' />

2° script

Codice:
function ScegliMateria(cdindi)
{ 
    document.getElementById("box_materie").innerHTML="<div align='center'>Attendi...</div>";
    var r = Math.random();
    myRequest = CreateXmlHttpReq(myHandler2);   
    myRequest.open("GET","materie.php?indirizzo="+escape(cdindi)+"&rand="+escape(r));
    myRequest.send(null);            
}

function Materia()
{
    var cdmate = $('select[name=codice_materia]').find("option:selected").text(); alert(cdmate);   
    document.form1.codice_materia.value=cdmate;
    document.getElementById("box_materie").style.display = "none";
}

3° script

Codice:
function planningPerMateria(selezi)
{ 
   var cdsede = document.getElementById("cdsede").value;  
   var desede = document.getElementById("desede").value;  
   var cdalli = document.getElementById("cdalli").value; 
   var nmalli = document.getElementById("nmalli").value; 
   var cdindi = document.getElementById("cdindi").value; alert(cdindi);  
   
   var cdmate = $('input[name=Materia]').val(); alert(cdmate);

in questo terzo script vorrei visualizzare con l'alert il coidce materia
 
Ultima modifica di un moderatore:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, non ho capito questo pezzo di codice
PHP:
onclick='planningPerMateria("<?php $sele = 'A'; ?>")'
me lo puoi spiegare ? perchè in realtà non stampi nessun parametro da passare alla funzione ma valorizzi una variabile php.
 

Vera

Utente Attivo
3 Giu 2014
76
1
8
In realtà non serve, al momento, questa riga di codice:

HTML:
onclick='planningPerMateria("<?php $sele = 'A'; ?>")'

a me basta anche:

HTML:
onclick='planningPerMateria()'

ma non capisco dove sbaglio quando devo reperire il codice cdmate.

Grazie
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
La funzione prevede un parametro
Codice:
function planningPerMateria(selezi)
se non lo passi va in errore
 

Vera

Utente Attivo
3 Giu 2014
76
1
8
Come ti dicevo se la chiamata alla funzione non ha nessun parametro, al momento,

HTML:
onclick='planningPerMateria()'

anche la relativa chiamata é della serie:

Codice:
function planningPerMateria()
{ 
   var cdsede = document.getElementById("cdsede").value;  
   var desede = document.getElementById("desede").value;  
   var cdalli = document.getElementById("cdalli").value; 
   var nmalli = document.getElementById("nmalli").value; 
   var cdindi = document.getElementById("cdindi").value; alert(cdindi);  
   
   var cdmate = $('input[name=Materia]').val(); alert(cdmate);
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
va bene, passiamo a questa istruzione
Codice:
$('input[name=Materia]').val();
ci vorrebbero gli apici per il name
Codice:
$("input[name='Materia']").val();
Hai incluso la libreria Jquery?
Nel codice che hai postato non vedo nessun input con name "Materia".
 

Vera

Utente Attivo
3 Giu 2014
76
1
8
si, la libreria jquery é inclusa.

Che vuoi dire: Nel codice che hai postato non vedo nessun input con name "Materia". ??? In quale codice???

Io intanto correggo il tuo suggerimento per gli apici
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
In quale codice???
<form name='form1'><font color = "green"> Materia: </font>
<span id='box_materie'>
<select name="codice_materia" id='cdmate' onChange='Materia()'>
<option value="">Seleziona...</option></select>
</span>
</form>
<input type='button' onclick='planningPerMateria("<?php $sele = 'A'; ?>")' value=' Classi per materia ' style='width:140px' />
visto che richiami input[name=Materia] dovrebbe esserci
HTML:
<input name="Materia" ......
 

Vera

Utente Attivo
3 Giu 2014
76
1
8
Ti vorrei postare il codice un pò più completo cosi da analizzare al meglio la problematica se tu sei disponibile.

Vera
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Posta pure, e se lo hai online posta anche il link
 

Vera

Utente Attivo
3 Giu 2014
76
1
8
Ok ti posto la parte del progetto relativa alla problematica. Tieni presente con non é ancora online.

Primo script:

HTML:
<form name='form0'><font color = "green">Indirizzo scolastico: </font>
<select name="indirizzo" id='cdindi' onChange='Indirizzo()'>
<option value="">Seleziona...</option>
<div id='box' style='width:200px; height:200px; display:none; padding:0px; margin:0px; margin-right:3px; float:right'></div>


<?php
$spazio = ' - ';
    
  for($j=0; $j<count($lista_indirizzi); $j++)
  {
      $cdindi = $lista_indirizzi[$j]['CDINDI'];
      $deindi = $lista_indirizzi[$j]['DEINDI'];
         
      if (trim($cdindi) == trim($selezionato))
      {
          
      }
      else
      {
      echo "<option value=".$cdindi.">".$cdindi." - ".$deindi."</option>";                        
      }
 }
  echo $cdindi;
?> 
</select></form>

<form name='form1'><font color = "green"> Materia: </font>
<span id='box_materie'>
<select name="codice_materia" id='cdmate' onChange='Materia()'>
<option value="">Seleziona...</option></select>
</span>
</form>
 

<input type='button' onclick='planningPerMateria("<?php  $selezi = 'A'; echo $selezi;?>")' value=' Classi per materia ' style='width:140px' />

Tieni presente che nella prima parte dove c'é poi il ciclo for non faccio altro che leggere il primo database relativo agli indirizzi scolastici e caricare il primo form. Il secondo form (cioé quello relativo alla lista delle materie) viene caricato in automatico (con il codice che ti riporto qui sotto) alla selezione di un qqualsiasi coidce indirizzo del primo form.

questo é il relativo javascript:

Codice:
function Indirizzo()
{ 
    var cdindi = $('select[name=indirizzo]').find("option:selected").text();   
    //document.form1.indirizzo.value=cdindi;  
    //document.getElementById("box").innerHTML = "<div align='center'>Attendi...</div>";
    //document.getElementById("box").style.display = "none";  
    ScegliMateria(cdindi);
}

function Pulisci(ogg){
    ogg.value='';
}

function ScegliMateria(cdindi)
{ 
    document.getElementById("box_materie").innerHTML="<div align='center'>Attendi...</div>";
    var r = Math.random();
    myRequest = CreateXmlHttpReq(myHandler2);   
    myRequest.open("GET","materie.php?indirizzo="+escape(cdindi)+"&rand="+escape(r));
    myRequest.send(null);            
}

function Materia()
{
    var cdmate = $('select[name=codice_materia]').find("option:selected").text();     
    document.form1.codice_materia.value=cdmate;
    document.getElementById("box_materie").style.display = "none";
}

e da questo puoi notare che la lista delle materie, alla selezione di un indirizzo scolastico, si carica dal php: materie.php.

In sostanza sia il caricamento degli indirizzi che delle materie funziona. Il problema rimane quando faccio la nuova chiamata allo script: planningPerMateria. In questo codice reperisco il codice indirizzo (semplicemente con un alert ma non il codice materia).

Codice:
function planningPerMateria(selezi)
{ 
    
   var cdindi = document.getElementById("cdindi").value; alert(cdindi);  
   
   var cdmate = $('input[name="Materia"]').val(); alert(cdmate);
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Scrivendo cosi chiedi allo script di recuperare il valore del input con name "Materia"
Codice:
 var cdmate = $('input[name="Materia"]').val();
nel codice che hai postato non c'è nessun elemento con quel nome
Se vuoi recuperare il valore della select selezionata codice_materia dovresti scrivere
Codice:
var cdmate = $('select[name="codice_materia"]').val();
 
Ultima modifica:

Vera

Utente Attivo
3 Giu 2014
76
1
8
Purtroppo il problema persiste con il codice da te indicato:

Codice:
var cdmate = $('select[name="codice_materia"]').val(); alert(cdmate);


l'alert me lo da vuoto e su strumenti/Sviluppo web/Console del browser in Mozilla Firefox mi dice:

TypeError: document.form1.codice_materia is undefined.

Mi spiace disturbarti ma devo assolutamente risolvere il problema.
Grazie
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Mi dispiace ma proprio non riesco a capire la logica dei tuoi script
Lasciando perdere la chiamata ajax e la creazione della select, ad un certo punto dovresti trovarti in questa situazione
HTML:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">

    function Materia()
    {
        var cdmate = $('select[name=codice_materia]').find("option:selected").text();     
        document.form1.codice_materia.value=cdmate;
        document.getElementById("box_materie").style.display = "none";
    }
    function planningPerMateria()
    {     
        var cdmate = $('select[name="codice_materia"]').val(); alert(cdmate);
    }
</script>

<form name='form1'>
    <font color = "green"> Materia: </font>
    <span id='box_materie'>
        <select name="codice_materia" id='cdmate' onChange='Materia()'>
            <option value="">Seleziona...</option>
            <option value="Matematica">Matematica</option>
            <option value="Fisica">Fisica</option>
            <option value="Inglese">Inglese</option>
        </select>
    </span>
</form>
<input type='button' onclick='planningPerMateria()' value=' Classi per materia ' style='width:140px' />
la funzione materia() in pratica ha lo scopo di nascondere la select
cliccando sull'input mostri l'alert della scelta effettuata
non capisco
Lo script che ti ho postato in ogni caso funziona e non da errori.
 
Stato
Chiusa ad ulteriori risposte.
Discussioni simili
Autore Titolo Forum Risposte Data
D [Javascript] inserire uno script in un file php Javascript 6
S Problema con script php-javascript PHP 2
G Passare loop in php su uno script javascript PHP 12
M [cerco lavoro][retribuito] Realizzazione script php/javascript Offerte e Richieste di Lavoro e/o Collaborazione 0
S script php che raccoglie form javascript e lo invia tramite mail PHP 0
K Esecuzione di Script PHP alla JavaScript PHP 1
P lanciare script asp (o php) da jquery Javascript 1
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
M Collegamento tra form html e script php PHP 4
felino PHP e script generazione file excel PHP 2
R Primo script in PHP / CSS PHP 4
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
T [a pagamento] programmatore PHP che mi aiuti a migrare gli script da vecchia versione PHP a nuova Offerte e Richieste di Lavoro e/o Collaborazione 1
Max 1 [PHP] Script che funziona in locale e non online PHP 16
K Help: problema con uno script di booking in php! PHP 0
O [PHP] inviare dati da form e script ajax PHP 0
P [PHP] Aggiungere un mio script a prestashop? PHP 10
Gabriele15497514 php testo errato durante la lettura del file txt quando lo script viene eseguito contemporaneamente PHP 3
romeocharly [PHP] Script per rinominare in automatico le immagini inviate da ftp PHP 0
A [PHP] Script con array con numeri che iniziano per 00 PHP 2
TpD [PHP] Script per organizzazione presenza eventi PHP 3
D [PHP] script che invii una mail automatica dopo risposta ad una discussione di un forum PHP 0
T interpretare uno script php non fatto da me... PHP 3
O Script PHP e loro visibilità PHP 4
A [PHP] Script Ip camera su altervista senza sottocartelle PHP 6
M [PHP] Problema script ricezione e invio posta... PHP 1
Y Codice AdSense su script php PHP 4
L [PHP] Problema Script 'Not Found' PHP 4
webmachine [PHP] Script per censurare parole PHP 4
C richiamare una funzione in un altro script php PHP 1
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
B [PHP] hp script creare un utente diminuendo -1 e cosi via PHP 1
Y Modificare script php PHP 5
paloppa [PHP] script importati da internet o da file PHP 24
xone [Vendo] Script gestionale php-mysql gestione pratiche Altri Annunci 0
T mostrare il riultato di uno script php Ajax 2
K Script PHP per leggere array.txt Presentati al Forum 3
Punix [PHP] problema script invio e-mail PHP 2
R pagina html + script php PHP 12
M Script php funziona / non funziona in base all'hosting PHP 21
T [PHP] piccola modifica a script (non mio...) PHP 8
Trapano Script php che non va più' con Versione MySQL: 5.6 PHP 5
Mauro Guardiani [PHP] script per caricamento video PHP 0
matteoraggi Screenshot da script php PHP 0
F Richiesta script PHP PHP 1
giancadeejay Bloccare utente se non loggato con script php PHP 12
booklisa [PHP] Script nello script PHP 2
H [PHP] Script non vengono eseguiti PHP 2
elpirata [PHP] Script reminder email PHP 11
9 inserire contenuto in un file pdf aperto sul browser tramite script php PHP 0

Discussioni simili