Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2019
    Messaggi
    31

    Pagina per la visione dei consumi e dello scarto

    Buongiorno a tutti.
    Ho creato delle pagine php che mi permettono di calcolare il materiale che utilizzo, vedere come viene utilizzato e che scarto resta inutilizzato.
    Nello specifico, viene chiesto all'utente quanti tipi di tubolari dovrà avere.
    In base a questo risultato vengono stampati tanti campi di testo per richiedere dimensioni e quantità quanti sono i tipi di cui necessita l'utente.
    Una volta comunicati questi dati il tutto viene inviato ad un terzo file che ha diverse funzioni:
    • ottimizzare il taglio dei pezzi in tubi di lunghezza fissa per avere il minor scarto possibile
    • evidenziare in che modo vengono "tagliati" quesit tubi
    • stampare il numero di tubi utilizzati
    • stampare lo scarto rimanente

    Non riesco a capire per quale motivo il terzo file non funziona
    Allego i file, quello che mi da problemi è appunto "risultato.php".

    Grazie a chiunque si interessi
    File allegati File allegati

  2. #2
    Così è un po' poco che ci dici, che cosa intendi per "non funziona"?

    Cose che noto subito così alla prima occhiata:

    1) Sia ParseRequest che CreateForm hanno errori di html, visto che non hanno per nulla il tag body che è obbligatorio
    2) In ParseRequest manca il tag </tr> nel ciclo in php
    3) risultato.php contiene solo la definizione di una classe, e nessuna riga esterna alla definizione di classe che la usi, quindi di sicuro non farà proprio nulla: definire una classe senza fare mai $obj= new NomeClasse significa che il file di per se non produrrà nessun output, mai.
    4) in risultato usi $this->input, $this->load, ->html, e forse anche altre proprietà e metodi che però non sono mai definiti da nessuna parte, e siccome la classe Goptimeze non eredita da nessun'altra classe, per poter usare questi metodi o proprietà devi definirli, da qualche parte...
    5) Nella funzione ParseRequest della classe... fai new Goptimeze? Per quale ragione un oggetto di classe Goptimeze dovrebbe generare un ALTRO oggetto della stessa classe?
    6) Perchè mai fai ini_set('memory_limit',-1)? Non è una buona idea dare memoria illimitata ad uno script senza ragione...
    7) in risultato.php il file termina con ?> e molte righe vuote... Mai fare questo che può dare un sacco di problemi con gli header, visto che non hai bisogno di inserire in quel file dell'html dopo il codice php, semplicemente NON mettere ?> !!!
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2019
    Messaggi
    31
    Ciao Shores,
    i punti 1, 2 e 7 li ho sistemati.
    Per quanto riguarda i punti 3 e 5 ho risolto, avevo incollato erroneamente due function all'interno della classe
    La memoria illimitata è stata messa per precauzione dovendo fare diversi calcoli e dovendo poi integrare in futuro una larga parte di codice per altre funzioni, se credi che ora come ora crea dei problemi la posso semplicemente commentare.
    Solo non riesco ora a capire come far interagire i file e come definire i vari metodi inseriti.
    Premetto che i file li ho creati molto tempo fa quindi ora php e html li mastico molto molto meno.
    Mi puoi dare una mano ad ultimare il codice?

    Allego i file aggiornati

    Grazie
    File allegati File allegati
    Ultima modifica di Felotti; 16-10-2019 a 09:40 Motivo: Aggiunta allegato

  4. #4
    Perdonami la franchezza, ma i cambiamenti che hai fatto mi fanno capire che non hai per nulla chiaro quello che stai facendo: in risultato.php hai estratto due funzioni dalla definizione della classe, ma entrambe usano $this che si può usare solo nelle classi, visto che si riferisce all'oggetto della classe, e comunque usi $this->input che, di nuovo, non è definito da nessuna parte.

    I tag body che hai aggiunto sono sbagliati, visto che sono intersecati con i tag form, ed è SEMPRE vietato intersecare i tag...

    Ma comunque non ti è chiaro un fatto: in risultato.php continui ad avere solo codice che definisce una classe e alcune funzioni, e non c'è una sola riga di codice che RICHIAMI queste funzioni e questo codice. Stai dando gli schemi tecnici su come è fatto il frullatore, ma non premi mai il bottone che lo aziona!

    In più, da dove vengono queste cose $this->input-> o $this->load->view ? Non è che sei abituato ad usare una qualche libreria framework? Quei comandi non fanno parte di php in nessuna maniera...
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2019
    Messaggi
    31
    I file CreateForm e ParseRequest hanno sempre funzionato correttamente, non c'era alcun problema di tag intersecati.
    Per mio errore ho estratto dalla classe le due funzioni non considerando $this->input e son d'accordo, ma da qui a dire che non mi è chiaro ciò che sto facendo..

    Certo che non richiamavo la classe, il problema non stava nella chiamata ma nel codice.

    Ad ogni modo, quei comandi fanno eccome parte di PHP, il problema non erano quelli.
    Correggendo gli input (la sintassi $_POST('$var') e un'altra riga funziona tutto.
    Quindi problema risolto

Tag per questa discussione

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 © 2019 vBulletin Solutions, Inc. All rights reserved.