Joomla.it Forum

Componenti per Joomla! => Gestione Form => : antjoom 01 Apr 2017, 19:32:52

: Piccolo aiutino PHP per form
: antjoom 01 Apr 2017, 19:32:52
Ciao, non riesco ad uscire fuori da questa cosa
In un form ho due Radio Box
Nel lato Setup, nell'evento "On success" ho inserito due Event switcher seguiti da Email


Nel primo Event Switcher c'è questo codice


:
<?php
if ($form->data['radio16']=="Evento 1") {
return 
"success";
} else {
return 
"fail";
}
?>


Nel secondo c'è quest'altro


:
<?php

if ($form->data['radio17']=="Evento 2") {
return 
"success";
} else {
return 
"fail";
}
?>





Cosa succede: se si verifica l'Evento 1 arriva una mail ad un indirizzo mail specifico e se si verifica l'Evento 2 arriva una mail ad altro indirizzo.
Se una persona seleziona entrambi gli eventi, arrivano solo le mail dell'Evento1 ignorando quelle del'Evento 2

Io vorrei che se un utente selezionasse entrambi gli Eventi, partirebbero due mail

Possibile? perdonatemi se ho creato un pò di confusione

: Re:Piccolo aiutino PHP per form
: Alex21 01 Apr 2017, 20:11:03
Ciao, non riesco ad uscire fuori da questa cosa
In un form ho due Radio Box

Io vorrei che se un utente selezionasse entrambi gli Eventi, partirebbero due mail

I Radio Box di un Form possono dare soltanto 1 risposta anche se sono tanti. Quando ne clicchi uno escludi gli altri e il tuo php per l'esame dell'input utente è da rivedere perché gli input  type = radio  hanno tutti lo stesso name, cambia il  value  e in base a quello il php si orienta.
Se sostituisci i radio box con dei check box che possono avere molti valori e adatti il php dovrebbe funzionare.
Ciao!




: Re:Piccolo aiutino PHP per form
: antjoom 01 Apr 2017, 20:29:20
Ok, e se inserisco un check box con tre scelte, potresti darmi il codice PHP da inserire nell'Event switcher?


Lo so che chiedo troppo, ma se puoi dammi una mano
: Re:Piccolo aiutino PHP per form
: giovi 02 Apr 2017, 09:24:34
Lo trovi con una ricerca: http://forum.joomla.it/index.php?topic=229704.0 (http://forum.joomla.it/index.php?topic=229704.0)


Comunque sarebbe bene che lo specificassi se stai usando chronoform per il form, altrimenti metti in difficoltà chi cerca di aiutarti
: Re:Piccolo aiutino PHP per form
: Alex21 02 Apr 2017, 12:20:00
Ok, e se inserisco un check box con tre scelte, potresti darmi il codice PHP da inserire nell'Event switcher?
Il codice del link segnalato da Giovi va bene.
Credo che hai fatto un po' di confusione con html. Pulsanti radio e  check box sono molto diversi.
Per i radio è importante l'attributo value, per i check box molto meno. Il codice del link:
:
<?php
switch ($form->data['nome_campo']) {
case 
'opzione2':
    return 
'event_b';   /* invia mail a indirizzo1 */
    
break;
  case 
'opzione3':
    return 
'event_c';  /*  invia mail a tutti e due gli indirizzi */
    
break;
  default:
    return 
'event_a'/* errore non cliccato nessuno */
    
break;}
?>
Va bene per solo questo html:
:
<br><input type="radio" name="nome_campo" value="opzione2" >
   <br><input type="radio" name="nome_campo" value="opzione3">

Se, invece, adoperi i check box ne devi mettere 2, ognuno con un diverso name e le loro risposte sono solo selezionato o non selezionato, quindi
check1 selezionato invia mail a indirizzo1,
check2 selezionato invia mail a indirizzo2,
tutti e due selezionati invia mail a tutti.
Mi sono spiegato?
Ciao!
: Re:Piccolo aiutino PHP per form
: antjoom 02 Apr 2017, 14:25:49
Lo trovi con una ricerca: http://forum.joomla.it/index.php?topic=229704.0 (http://forum.joomla.it/index.php?topic=229704.0)


Comunque sarebbe bene che lo specificassi se stai usando chronoform per il form, altrimenti metti in difficoltà chi cerca di aiutarti


Hai ragione scusami. Utilizzo chronoform 5


Se, invece, adoperi i check box ne devi mettere 2, ognuno con un diverso name e le loro risposte sono solo selezionato o non selezionato, quindi
check1 selezionato invia mail a indirizzo1,
check2 selezionato invia mail a indirizzo2,
tutti e due selezionati invia mail a tutti.
Mi sono spiegato?
Ciao!


Ok, diciamo che nella mia ignoranza vi seguo fino ad un certo punto. Vediamo se ho capito


In primis utilizzare i check box che vanno bene per quello che devo fare


Lato Designer me ne occorrono 3


(http://i67.tinypic.com/2diet6f.jpg)


Nel lato setup invece, ho inserito 3 Event Switcher (uno per ogni check box ) con conseguente invio mail


(http://i64.tinypic.com/2gxocwh.jpg)


Per adesso è giusto così?


ora dovrei aggiungere il codice php


:
<?php
switch ($form->data['checkbox134']) {
case 
'1':
    return 
'1';   /* invia mail a indirizzo1 */
    
break;
 
?>


Potrebbe essere questo?


Grazie mille


: Re:Piccolo aiutino PHP per form
: Alex21 02 Apr 2017, 22:34:15
Hai ragione scusami. Utilizzo chronoform 5

Potrebbe essere questo?
Conosco Chronoform troppo poco per arrischiarmi e penso che probabilmente potresti fare tutto col solo pannello di controllo.
Comunque il tuo codice non va bene per i checkbox perché bisogna:
- verificare che il checkbox esista, altrimenti quando lo testi dà errore se non esiste.
- verificare se è 'on' oppure 'ON' oppure 'true', dipende dal browser.
Quello che posso fare è postare  un frammento generico per controllare due checkbox. Spero ti sia d'aiuto.
:
<?php
   
/* php => 5.5  */
class Prova{
   static 
$ck '';
   
   function 
__construct(){      
      
$test1 = function (){
         if (
$_POST['check1'] == 'on'){self::$ck .= '"ceck1 spuntato"';}
      };
      
      
$test2 = function (){
         if (
$_POST['check2'] == 'on'){self::$ck .= ' "ceck2 spuntato"';}
      };      
      
      isset(
$_POST['check1']) ? $test1() : '';
      isset(
$_POST['check2']) ? $test2() : '';   
   }
}
   
$ckP = new Prova();   
?>

<!DOCTYPE html>
<html>
<head>
<title>Es_checkbox</title>
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
   <label>label1</label>
   <input type="checkbox" name="check1">[br /]
   
   <label>label2</label>
   <input type="checkbox" name="check2">[br /]
   [br /]<input type="submit" value=" TEST CHECKBOX ">
</form>
[br /]
<div><?php echo $ckP::$ck?><>
</body>
</html>


: Re:Piccolo aiutino PHP per form
: antjoom 03 Apr 2017, 17:30:05
Intanto grazie  :) , sto facendo varie prove per capire se riesco