Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [Mysql/PHP] Trasformazione

    Intanto rigrazio piero.mac che mi sta aiutando alla realizazione di questo script.
    Per piero.mac terro una nota di considerazione quando finirò lo script mettendo se a tuo gradimento il tuo contributo

    Passiamo ora al mio problema.
    Girando per html.it mi sono imbattuto su uno script di mio interesse e riguardante il mio caso o meglio quasi.
    Tutorial di esempio: database prenotazioni alberghiere - I
    Questo qui sopra è il tutorials di mio interesse.

    Premettendo che la domestichezza del linguaggio, PHP, SQL, MySql è a livelli da abbastanza neofiti mi sono imbattuto, nella seconda pagina del tutorial, in una stringa di codice al quale non saprei come metterci mano. Riporto le parti interessanti del mio problema:

    Fonte Originale
    Innanzitutto decidiamo di creare una stored function per il calcolo del prezzo di una camera, dato il periodo di interesse e il tipo di camera:
    Codice PHP:
    DELIMITER //
    CREATE FUNCTION prezzo(arrivo datepartenza date,
            
    tipo enum('singola','doppia','matrimoniale','tripla'))
    RETURNS DECIMAL(7,2)
    READS SQL DATA
    BEGIN
            
    DECLARE varData DATE;
            DECLARE 
    varTotale DECIMAL(7,2) default 0;
            DECLARE 
    varPrezzo DECIMAL(7,2);
            
    SET varData arrivo;
            WHILE 
    varData partenza DO
                    
    SELECT prezzo INTO varPrezzo FROM prezzi
                    WHERE varData BETWEEN periodoDal 
    AND periodoAl
                    
    AND tipoCamera tipo;
                    
    SET varTotale varTotale varPrezzo;
                    
    SET varData DATE_ADD(varData,INTERVAL 1 day);
            
    END WHILE;
            return 
    varTotale;
    END//
    DELIMITER 
    Come vedete la funzione, che si chiama 'prezzo', accetta come parametri in input le date di arrivo e partenza e il tipo di camera, che ricalca lo stesso tipo di campo presente nella tabella relativa.
    Ora il mio problema sta: Come trasformare questa stringa per inserirla in un'eventuale pagina PHP?

    Grazie ragazzi per ogni eventuale risposta ed aiuto.
    Ideabile - Web Design
    Me on Flickr
    http://www.flickr.com/photos/m3kh

    Soit qui mal y pense...

  2. #2
    Ok.
    Provando a metterla direttamente da PHPmyAdmin mi dava spesso errore.
    Errore? eppure l'ho ricopiata per com'era.

    Ed allora effettuo una simpatica ricerca su quello che doveva essere la stored function.

    In poche parole queste stored function sono delle regole che si applicano al database per l'eventuale inserimento dei dati. Piccolo problema. Viene supportato da MySQL 5.01 una versione che io non ho e che molti hosting non hanno.

    Es:
    |------|-------|--------|-----|
    | A | B | C | D |
    |------|-------|--------|-----|
    | | | | |
    |------|-------|--------|-----|
    | | | | |
    |------|-------|--------|-----|
    | | | | |
    |------|-------|--------|-----|
    Io ho una tabbella di questo genere
    inserendo una stored function del tipo.
    QX= QueryX

    QX è in A = QX x 2
    QX è in B = QX x 3
    ecc...

    In poche parole imposta delle regole nell'inserimento delle query in determinate tabbelle.
    Comunque ho pensato che lo stesso risultato lo si può ottenere in php.
    Facendo una differenza di date ovvero data2 - data1 = giorni
    Questi giorni potrei moltiplicarli per il prezzo destinato che io desidero.
    giorni x 50€ = giornix50€.

    Ma il dubbio mi rimane.
    Nel database io avevo preimpostato le tariffe che vi erano durante quelle date, in tal caso io non utilizzi più il sistema del database l'unica maniera è appogiarmi al php per quanto riguarda l'uso dei calcoli. Ma come faccio a determinare i prezzi per esempio da data1 a data2?

    Comunque riconosco che la spiegazione delle stored fuction è un pò penosa però spero che serva a qualcuno per capire minimamente cosa siano e come possono essere utilizate.
    Ideabile - Web Design
    Me on Flickr
    http://www.flickr.com/photos/m3kh

    Soit qui mal y pense...

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    442
    Codice PHP:
    //nella pagina php scrivi
    <?
    FUNCTION prezzo($arrivo $partenza ,$tipo)
    var 
    $vardata,$varTotale $varPrezzo ;
            
    $varData $arrivo;
            WHILE (
    $varData partenza
    DO
                    {
    include 
    ''conf.inc.php;//file d'inclusione di connessione db
    $sql=mysql_query("SELECT prezzo INTO varPrezzo FROM prezzi
                    WHERE varData BETWEEN periodoDal AND periodoAl
                    AND tipoCamera = 
    $tipo");
    $query=mysql_query("update prezzo  SET varTotale = '$varTotale' + '$varPrezzo',  SET varData='$vardata'");
                   
        }
            return 
    varTotale
    //richiami la funzione
    prezzo($arrivo,$partenza,$tipo);
    //sosstituisci i valori reqli del db
    ?>
    sommairamente è cosi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.