[PHP] Dubbio print variabile

Stato
Chiusa ad ulteriori risposte.

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
Salve a tutti , sono sempre io con davanti il mio piccolo progetto di booking.


Allora sto cercando di stampare una data che è stata inserita dall'utente all'interno di un campo. La data è in formato text, e l'utente per selezionare una data, andrà a selezionarla da un calendario.

Una volta che l'utente ha specificato le date di arrivo e partenza, dovrà comparire in basso un div con all'interno le offerte da lui scelte.
Volevo adesso stampare a video la data che l'utente ha scelto dal calendario.
Il problema è che se l'utente compila il form, e invia i dati senza selezionare alcuna offerta, successivamente quando decide la data di arrivo e di partenza, compare la data.

Se invece il form non viene inviato , la data non appare quando appaiono le offerte.


Metto qui il codice js, e parte del codice php/html

Codice JS
Codice:
$(function(){

    var self=this;
    var data1 = $('#data_arrivo');
    var data2 = $('#data_partenza');
     self.check_next=[0,0];
    data1.datepicker({
        minDate:0,
        dateFormat: "dd/mm/yy",
        onSelect: function (selectedDate) {
                    var depart = jQuery.datepicker.parseDate('dd/mm/yy', selectedDate);
                    depart.setDate(depart.getDate() + 1);
                    data2.datepicker("option", "minDate", depart);
        setTimeout(function(){
            data2.datepicker('show');
        }, 16);
             self.check_next[0]=1;
        if(check_div(self.check_next))load_date_picker();
                }
            });
    
    data2.datepicker({     
        minDate:0,
        dateFormat: "dd/mm/yy",
        onSelect:function(selectedDate){
              self.check_next[1]=1;
        if(check_div(self.check_next))load_date_picker();
            
        }
        });
    $.ajax({
        url: 'http://localhost/lavoro/57-2/',
        method: 'POST',
        data: {
            data_arrivo: data1.val(),
            data_partenza: data2.val()
        }
    });
});
function check_div(ar){
    if(ar[0] && ar[1])return true;
    else return false;
}

function load_date_picker(){
    $('.show_div').removeClass('hidden');
}
Codice PHP/Html
Codice:
<div class="hidden show_div">
         <p style= "text-align:center; font-weight:bold;">Offerte Disponibili nel periodo da Lei selezionato : </p>
             <?php
                print $_POST['data_arrivo'];
                $connessione=mysqli_connect("localhost","root","","lavoro") or die ("Impossibile connettersi");
                $query_offerte="SELECT post_id from rlnz_postmeta where meta_key='inizio'";
                ?>
                <div style="text-align:center; font-weight:bold;">
                    
                <?php
                  
                $i=0;
                $res=mysqli_query($connessione,$query_offerte);
                 while($row = mysqli_fetch_array($res)){
                    
                 print $row['post_id'];?><input type="radio" name="offerta" value="valore<?php $i;?>"/>
                    <?php
                     $i++;
                     print "<br/>";
                 }
            
            
             ?>
             </div>
         </div>
 

marino51

Utente Attivo
28 Feb 2013
2.912
162
63
Lombardia
stai aprendo una seconda discussione per lo stesso argomento e con lo stesso codice

purtroppo il codice che hai postato entrambe le volte non credo possa funzionare viste le parti mancanti e vista la logica non rispondente al funzionamento di un sito web

detto ciò, se vuoi essere aiutato nel tuo progetto, posso suggerirti di fare passo passo tutte le operazioni anche quelle che sembrano inutili, ma vista la tua non preparazione, penso che possano aiutarti a capire

per cortesia, posta il solo codice html ( ed eventuale js ) che permette la scelta delle date e che dovresti aver già sviluppato
verifichiamo insieme questo codice e successivamente facciamo il passo successivo

mi aspetto un codice che, con due datekeeper in un form, consenta la scelta delle date
all'interno di questo codice non mettere il div "hidden"

aspetto ....
 
  • Like
Reactions: macus_adi

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
stai aprendo una seconda discussione per lo stesso argomento e con lo stesso codice

purtroppo il codice che hai postato entrambe le volte non credo possa funzionare viste le parti mancanti e vista la logica non rispondente al funzionamento di un sito web

detto ciò, se vuoi essere aiutato nel tuo progetto, posso suggerirti di fare passo passo tutte le operazioni anche quelle che sembrano inutili, ma vista la tua non preparazione, penso che possano aiutarti a capire

per cortesia, posta il solo codice html ( ed eventuale js ) che permette la scelta delle date e che dovresti aver già sviluppato
verifichiamo insieme questo codice e successivamente facciamo il passo successivo

mi aspetto un codice che, con due datekeeper in un form, consenta la scelta delle date
all'interno di questo codice non mettere il div "hidden"

aspetto ....
Per datekeeper va bene anche il datapicker?
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
stai aprendo una seconda discussione per lo stesso argomento e con lo stesso codice

purtroppo il codice che hai postato entrambe le volte non credo possa funzionare viste le parti mancanti e vista la logica non rispondente al funzionamento di un sito web

detto ciò, se vuoi essere aiutato nel tuo progetto, posso suggerirti di fare passo passo tutte le operazioni anche quelle che sembrano inutili, ma vista la tua non preparazione, penso che possano aiutarti a capire

per cortesia, posta il solo codice html ( ed eventuale js ) che permette la scelta delle date e che dovresti aver già sviluppato
verifichiamo insieme questo codice e successivamente facciamo il passo successivo

mi aspetto un codice che, con due datekeeper in un form, consenta la scelta delle date
all'interno di questo codice non mettere il div "hidden"

aspetto ....
Ecco qui il codice da te richiesto

HTML:
<html>
<head>
<meta charset="UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    
    
 
</head>

<body>
<form class="cmxform" id="form" method="POST">
    <p>Data arrivo </p>
     <p><input style="display:block; float:left; width:12,5%; height:3,5%;" type="text" name="data_arrivo" id="data_arrivo" required></p>
    <br/>
    <br/>
    <p>Data partenza</p>
     <p><input style="display:block; float:left; width:12,5%; height:3,5%;" type="text" name="data_partenza" id="data_partenza" required></p>
    
    
    </form>
      </body>
    
    </html>

<script>
     $('#data_arrivo').datepicker({
        minDate:0,
        dateFormat: "dd/mm/yy",
        onSelect: function (selectedDate) {
                    var depart = jQuery.datepicker.parseDate('dd/mm/yy', selectedDate);
                    depart.setDate(depart.getDate() + 1);
                    $('#data_partenza').datepicker("option", "minDate", depart);
        setTimeout(function(){
            $('#data_partenza').datepicker('show');
        });
            
                }
            });
    
     $('#data_partenza').datepicker({     
        minDate:0,
        dateFormat: "dd/mm/yy"
        });
                    
</script>
 

marino51

Utente Attivo
28 Feb 2013
2.912
162
63
Lombardia
questo è il primo suggerimento,

guarda il codice che segue e imposta il tuo, per farlo lavorare allo stesso modo
per favore, esamina riga per riga e cerca di capirne l'utilità

quando funziona aggiungi nella form la definizione "action" e aggiungi il bottone "submit"

HTML:
<!doctype html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />

 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

  <script> $(function() { $( "#datepicker" ).datepicker(); });</script>
</head>
<body>

<h2>Date Picker</h2> <br />
<input type="text" id="datepicker" name="datepicker" />

</body>
</html>
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
questo è il primo suggerimento,

guarda il codice che segue e imposta il tuo, per farlo lavorare allo stesso modo
per favore, esamina riga per riga e cerca di capirne l'utilità

quando funziona aggiungi nella form la definizione "action" e aggiungi il bottone "submit"

HTML:
<!doctype html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />

 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

  <script> $(function() { $( "#datepicker" ).datepicker(); });</script>
</head>
<body>

<h2>Date Picker</h2> <br />
<input type="text" id="datepicker" name="datepicker" />

</body>
</html>
Non riesco a capire bene la differenza tra il tuo codice e il mio. Ho riletto piu' volte il tuo codice e penso che il mio sia piu completo dal lato script , in quanto vado a specificare piu' informazioni sul datapicker , utili per il mio progetto (es. non posso selezionare una data precedente a quella odierna, e la seconda data non può essere minore o uguale della prima , ma soltanto maggiore.
 

marino51

Utente Attivo
28 Feb 2013
2.912
162
63
Lombardia
penso che il mio sia piu completo dal lato script
se parli del codice che hai allegato al post 4, non mi sembra corrispondente a quanto dici ....
l'ho messo in un file con estensione html , l'ho eseguito ma non compie nessuna azione
chi sbaglia di noi due ?

se vuoi essere aiutato posta il codice come dici funzionare e da li proseguiamo,
per ora mi sembra che hai postato spezzoni di codice non funzionante

ps, vedi commenti al tuo post (identico) su html.it
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
se parli del codice che hai allegato al post 4, non mi sembra corrispondente a quanto dici ....
l'ho messo in un file con estensione html , l'ho eseguito ma non compie nessuna azione
chi sbaglia di noi due ?

se vuoi essere aiutato posta il codice come dici funzionare e da li proseguiamo,
per ora mi sembra che hai postato spezzoni di codice non funzionante

ps, vedi commenti al tuo post (identico) su html.it
In realta il codice è stato salvato in php e a me personalmente funziona!!

Ho messo il codice dentro la cartella del mio db , formato php , apro l'indirizzo localhost/ecc/ecc e funziona!!
 

macus_adi

Utente Attivo
5 Dic 2017
1.266
82
48
IT/SW
@paloppa Ascolta... Come detto in precedenza e come suggerito anche da @marino51 ed anche se tra di noi non scorre buon sangue, ti invito quantomeno ad ascoltare i suggerimenti, altrimenti inutile scrivere...
Hai fatto un plugin per Wordpress (cosa non specificata nei thread) e stai cercando di arrampicarti sugli specchi scopiazzando codice qua e la senza capire cosa effettivamente va fatto...
Il mio suggerimento dopo varie discussioni si è concluso con "Certo, ma come sai forse è consigliabile scrivere in modo non-intrusive il codice... Riguarderei un pò il tutto per amalgamare le discrepanze tra codice e BL, e rendere il codice più gestibile... Poi fai tu...". https://forum.mrwebmaster.it/threads/php-dubbio-valore-variabile.50927/

Questa cosa indirettamente anche marino51 l'ha detta, quindi anche se "scassa ombrelli (tutti e due)" forse un pelino di verità in ciò che si scrive ci sarà!
Il problema più grande non è quello " Funzione o Non Funziona", ma "Sai cosa stai facendo?", "Hai capito come si scrive per il WEB?".

Altra nota... capisco l'imprecisione, ma
Ho messo il codice dentro la cartella del mio db , formato php
Questa me la devi spiegare....
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
@paloppa Ascolta... Come detto in precedenza e come suggerito anche da @marino51 ed anche se tra di noi non scorre buon sangue, ti invito quantomeno ad ascoltare i suggerimenti, altrimenti inutile scrivere...
Hai fatto un plugin per Wordpress (cosa non specificata nei thread) e stai cercando di arrampicarti sugli specchi scopiazzando codice qua e la senza capire cosa effettivamente va fatto...
Il mio suggerimento dopo varie discussioni si è concluso con "Certo, ma come sai forse è consigliabile scrivere in modo non-intrusive il codice... Riguarderei un pò il tutto per amalgamare le discrepanze tra codice e BL, e rendere il codice più gestibile... Poi fai tu...". https://forum.mrwebmaster.it/threads/php-dubbio-valore-variabile.50927/

Questa cosa indirettamente anche marino51 l'ha detta, quindi anche se "scassa ombrelli" forse un pelino di verità in ciò che si scrive ci sarà!
Il problema più grande non è quello " Funzione o Non Funziona", ma "Sai cosa stai facendo?", "Hai capito come si scrive per il WEB?".

Altra nota... capisco l'imprecisione, ma

Questa me la devi spiegare....
Stiamo girando cosi tanto a lungo dietro questo problema, che fate passare anche la voglia di mettersi al pc e programmare da come rispondete. Ho chiesto semplicemente un aiuto in merito alla funzione ajax di jquery, e magari aveste risposto in modo concreto!!
Ho postato delle prove , e anzichè dire "riguarda la parte di js perchè potresti usare la funzione X ecc ecc" dite di riscrivere il codice da capo e ricominciare, come se le cose cambiassero!!
Altra cosa, non penso che voi la prima volta che vi siete imbattuti nella stesura di un progetto , piuttosto che di un sito , eravate bravissimi, quindi inutile dire di "amalgamare le discrepanze tra codice e bl". Penso che quello avvenga dopo , con il tempo e l'esperienza.

Detto ciò , ho specificato a marino che ho messo il file php dentro la cartella del mio db , in quanto non gli funzionava il codice postato da me al quarto post.

Sarò stupido io ,ma girate attorno al problema senza cercare di aiutare a risolvere!!

Comunque grazie a tutti per l'aiuto
 

marino51

Utente Attivo
28 Feb 2013
2.912
162
63
Lombardia
ma girate attorno al problema senza cercare di aiutare a risolvere!!
siccome il codice che hai postato non funziona, php o html è lo stesso,
mi ero posto l'obiettivo di portarti alla fine con un progetto funzionante, compreso di Ajax
vista la tua conoscenza, ho pensato di ottenere risultati passo passo

ma percepisco che tu voglia il progetto finito, sviluppato da qualcun altro,

non è questo il mio spirito e penso neppure del forum .... nonostante tante bravissime persone (escluso il sottoscritto che ha sempre poche idee e ben confuse)

abbandono ....
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
siccome il codice che hai postato non funziona, php o html è lo stesso,
mi ero posto l'obiettivo di portarti alla fine con un progetto funzionante, compreso di Ajax
vista la tua conoscenza, ho pensato di ottenere risultati passo passo

ma percepisco che tu voglia il progetto finito, sviluppato da qualcun altro,

non è questo il mio spirito e penso neppure del forum .... nonostante tante bravissime persone (escluso il sottoscritto che ha sempre poche idee e ben confuse)

abbandono ....
Io posso apprezzare le persone che mi dicano facciamo passo passo il tutto. Ma personalmente non penso che fino ad ora avessi fatto un progetto cosi lungo. Ho detto, e lo ripeto ancora una volta, che magari , se mi aveste dato maggiori dritte sul funzionamento della funzione $.ajax a quest'ora avrei gia risolto. Io non voglio la soluzione, ne tantomeno che il progetto mi venga fatto, perchè sono qui SOLO per imparare, e se chiedo una mano , significa che sono in grande difficoltà nonostante abbia letto di tutto su internet (e credetemi che su questa funziona è tutto molto poco chiaro per quanto mi riguarda).

Non prego e non obbligo nessuno , se non vuoi aiutarmi tranquillo , vai pure ;)
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
ritornando al problema e al fine del post, che stiamo andando secondo me troppo O.T.

Ho letto che dovrei utilizzare una funzione success per richiamare per esempio il div dove posso stampare il valore della variabile.
Ho provato a creare un div e a fare la stampa dentro
PHP:
<div class="prova" id="output">
        <?php
  
    print $_GET['data1'];
  
  
    ?>
            </div>
Ma ovviamente non va

PHP:
$.ajax({
      method:'GET',
        url:'mrweb.php',
        data:data1,
        success: function(vale){
        $('#output').html(vale);
    }
      
      
    });
Questo il codice JS
 

paloppa

Utente Attivo
26 Feb 2018
68
0
6
27
siccome il codice che hai postato non funziona, php o html è lo stesso,
mi ero posto l'obiettivo di portarti alla fine con un progetto funzionante, compreso di Ajax
vista la tua conoscenza, ho pensato di ottenere risultati passo passo

ma percepisco che tu voglia il progetto finito, sviluppato da qualcun altro,

non è questo il mio spirito e penso neppure del forum .... nonostante tante bravissime persone (escluso il sottoscritto che ha sempre poche idee e ben confuse)

abbandono ....
Altra cosa caro Marino , anzi te ne dico due con estrama sincerità.

1) Ho salvato il codice che ti ho postato sempre al quarto post in un file in formato html, aperto con chrome, e magicamente funziona, strano ma vero!!
2)Eri cosi tanto disposto ad aiutarmi, che mi dici che vedi post uguali su altri forum e mi dici anche "per ora mi sembra che hai postato spezzoni di codice non funzionante" quando in realtà ti ho postato l'intero codice!!!

Magari , per utenti simili al sottoscritto , potresti avere meno arroganza quando scrivi le cose
 

macus_adi

Utente Attivo
5 Dic 2017
1.266
82
48
IT/SW
Ho postato delle prove , e anzichè dire "riguarda la parte di js perchè potresti usare la funzione X ecc ecc" dite di riscrivere il codice da capo e ricominciare, come se le cose cambiassero!!
Tu vuoi scrivere con codice di altri senza capire.... fai così!
Codice:
this.aj= function(url,type,data) {
        return $.ajax({
            url: url,
            type: type,
            data: data
        })
    };
Cosa non è chiaro?
 
Stato
Chiusa ad ulteriori risposte.