Pagina 1 di 5 123 ... UltimoUltimo
Visualizzazione risultati 1 fino 30 di 130
Like Tree3Likes

Discussione: Calcolo tra start release_data

  1. #1
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito Calcolo tra start release_data

    Ecco un altro quesito che non sono riuscito a risolvere


    Tabella actor
    start
    end


    Tabella film
    year
    release_data



    lo script dovrebbe calcolare la differenza tra start (actor) e release_data (film)

    attenzione, release_data potrebbero essere molti, se guardiamo lo screenshot sotto ne vediamo 2





    1980-06-21

    2020-08-31


    quella da tenere conto sarebbe 1980-06-21 + start nel primo caso



    come calcolare se l'anno e' corrente?


    se l'anno e' attuale (2020) allora escludere start e calcolare 2020-08-31 + today
    che risulta 1 giorno

    spero che il ragionamento sia corretto e non ho fatto confusione

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Fattibile.
    Mi occorre conoscere ogni type coinvolto (actor.start, actor.end, release_data quest'ultimo suppongo sia la relazione tra un id attore e un film) su mysql o se varchar com'è la rappresentazione della data.. anche per year senza screenshot dovrai scrivere a mano.
    $row['release_data'] è dentro un loop?
    Ultima modifica di darbula : 01-09-2020 alle ore 21.19.00

  3. #3
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Ciao darbula

    ecco il tutto



    Tabella actor

    actor_id
    smallint(5)

    start
    varchar(10)

    end
    varchar(10)



    Tabella film

    film_id
    smallint(5)

    year
    year(4)

    release_data
    date



    la tabella actor e collegata con film con questa tabella

    Tabella film_actor

    actor_id
    smallint(5)

    film_id
    smallint(5)
    Ultima modifica di blackskyisback : 01-09-2020 alle ore 21.40.38

  4. #4
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    calcolare la differenza tra start (actor) e release_data (film)
    Non puoi calcolare la differenza tra un VARCHAR e un DATE Se actor.start è una data, imposta il tipo di colonna opportuno.

    quella da tenere conto sarebbe 1980-06-21 + start nel primo caso
    [...]
    se l'anno e' attuale (2020) allora escludere start e calcolare 2020-08-31 + today
    che risulta 1 giorno
    Parlavi di differenza, ma quelle sono somme. Immagino tu intenda dire actor.start - film.release_data.
    E se l'anno non è il 2020 quale criterio bisogna usare? Considerare la release_data più recente? La meno recente? Una a caso?

    I suggerimenti che do più spesso:


  5. #5
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Penso si possa tradurre come actor.start actor.end carriera di un attore e i film in cui ha partecipato l'attore, mentre senza eccezioni sull'anno sarebbe il primo film di quel attore nel proprio database. (Se coincide con start è veramente il primo film di quel attore dal momento che la carriera di un attore inizia con un film).
    Scusami perché Year ha 2020 e poi 2020-08-31? sarà un alias?
    Comunque è fattibile anche se sono ostico sull'esclusione dell'anno corrente a limite si crea un'altra funzione che indica film anno corrente di un attore (2020-08-31 a today 2020-09-01).
    Probabilmente non è possibile trasformare solo l'anno start in type DATE mysql che potrebbe memomirizzarlo in yyyy-00-00 una data comunque non valida discorso diverso se la maggior parte delle volte possiede anno mese e giorno.
    Ultima modifica di darbula : 01-09-2020 alle ore 23.03.58
    mzanella likes this.

  6. #6
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Tabella actor

    start <-------inizio carriera

    end <-------fine della carriera attore



    Tabella film

    year <---------- anno del film (* forse questo e' da escludere per questo codice)

    release_data <-----------rilascio del film per esempio in Usa


    Note:

    * potrebbe essere presente solo start (actor) e non release_data (film)

    * anno corrente 2020, se l'attore ha debuttato nel 2020 ed e' presente release_data (film) allora si devono
    calcolare quanto tempo e' trascorso da release_data (film) a Today

    * potrebbero essere presenti start (actor) e end (actor), allora viene annullato release_data (film)


    si accettano suggerimenti per migliorare il codice

  7. #7
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Codice PHP:
    $timezone = timezone_open('UTC');
    $now = date_create("now",$timezone);
    $ora = $now->format('Y-m-d H:i:s');
    $today = date_create('today',$timezone);
    $oggi = $today->format('Y-m-d H:i:s');
    $start = (strlen($row['start']) < 5) ? $row['start'].'-01-01 00:00:00' : $row['start'];
    $end = (!empty($row['end']) ? ((strlen($row['end']) < 5) ? $row['end'].'-01-01 00:00:00' : $row['end']) : $ora);
    if(isset(
    $row['dead']) && ($row['dead'].'-01-01 00:00:00') == $end) {
    echo
    'fine carriera';
    } elseif(
    $ora == $end) {
    echo
    'carriera in corso';
    } else {
    echo
    'abbandono carriera';
    }


    if(isset(
    $row['release_data']) || isset($row['year'])) {
    //differenza film dall'inizio carriera di un'attore
    $release_data = isset($row['release_data']) ? $row['release_data'].' 00:00:00' : $row['year'].'-01-01 00:00:00';
    $diff_film = date_create($release_data, $timezone)->diff(date_create($start, $timezone));
    $testo = 'In The Business';

    $year_film = $diff_film->y;
    $mese_film = $diff_film->m;
    $giorni_film = $diff_film->d;
    if(
    $year_film) {
    echo
    '<font color="blue">' . $year_film . '</font>' . '&nbsp; years &nbsp;' . $testo ;
    } elseif(
    $mese_film == 0 && $giorni_film == 0) {
    echo
    'anno corrente';
    } elseif(
    $mese_film) {
    echo
    '<font color="red">' . $mese_film . '</font>' . '&nbsp; months &nbsp;' ;
    if(
    $giorni_film) {
    echo
    '<font color="green">' . $giorni_film . '</font>' . '&nbsp; days &nbsp;';
    }
    echo
    $testo;
    } else {
    echo
    '<font color="green">' . $giorni_film . '</font>' . '&nbsp; days &nbsp;' . $testo;
    }
    }

    if(isset(
    $release_data) && substr($oggi, 0, 4) == substr($release_data, 0, 4)) {
    //differenza anno corrente film
    $diff_current_year = date_create($release_data, $timezone)->diff(date_create($oggi, $timezone));
    $testo = 'In The Business';

    $year_current = $diff_current_year->y;
    $mese_current = $diff_current_year->m;
    $giorni_current = $diff_current_year->d;
    if(
    $year_current) {
    echo
    '<font color="blue">' . $year_current . '</font>' . '&nbsp; years &nbsp;' . $testo ;
    } elseif(
    $mese_current == 0 && $giorni_current == 0) {
    echo
    'anno corrente';
    } elseif(
    $mese_current) {
    echo
    '<font color="red">' . $mese_current . '</font>' . '&nbsp; months &nbsp;' ;
    if(
    $giorni_current) {
    echo
    '<font color="green">' . $giorni_current . '</font>' . '&nbsp; days &nbsp;';
    }
    echo
    $testo;
    } else {
    echo
    '<font color="green">' . $giorni_current . '</font>' . '&nbsp; days &nbsp;' . $testo;
    }
    }
    Il codice è suddiviso in tre parti, la prima parte stampo a video fine carriera se l'attore è deceduto (inizialmente $row['end'] dovrebbe essere definita se abbandono carriera o fine carriera), carriera in corso se non terminata o abbandono carriera. Le prime sette variabili dovrebbero essere globali in tutto lo script, cioè mettile in un file esterno e poi le richiami con require_once.

    La seconda parte differenza film dall'inizio carriera di un attore.

    La terza parte differenza anno corrente film.
    Questo per me è logico.
    PS. È quasi uguale al codice che usi per anni mese giorno (coerenza codice e soprattutto le variabili saranno senza conflitto).
    Ultima modifica di darbula : 02-09-2020 alle ore 08.10.30

  8. #8
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Ciao darbula, grazie per il tuo aiuto

    penso che ci possa essere un problema pero' con le query

    mi spiego

    Cinema .php

    qui vengono visualizzati i dati dell'attore locati nella tabella actor ,
    a destra alla fine del ciclo della query si trova una table in cui visualizzo i film dell'actor collegati dalla tabella film_actor

    dove sta il possibile problema?

    nella query film_actor, io voglio visualizzare il tuo codice nella zona actor ma se eseguo la query che collega film_actor mi spezza il while e non vengono passati i dati in avanti

    possibile soluzione: integrare il tuo codice con la sua query in una pagina esterna e richiamarlo come funzione

    ecco lo screenshot per capire la struttura



    possibile quello che ho scritto si rivela sbagliato, ma vedendo la sequenza o il dubbio

    provo il codice e' ti faccio sapere

  9. #9
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    mi sono alzato con i paraocchi, non ho letto il tuo commento sotto il codice,

    il campo morte e' gia' presente nel database, si chiama:


    Tabella actor

    died text

  10. #10
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Per la query non ti so dire il perché non funziona primo perché non vedo il codice completo (giustamente stai in questo progetto da due anni e quindi ti posso capire per il non voler mostrare).
    Secondo non puoi creare colonne o campi con nomi di funzioni mysql ad esempio in una query vanno aggiunti i backtick Select * FROM tabella where `year`=2020 così mysql capisce di non utilizzare la funzione year.
    died text ma Nella è $row['dead']?
    Ultima modifica di darbula : 02-09-2020 alle ore 08.34.38

  11. #11
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    ok, adesso vedo cosa combino


    le query le posso pubblicare

    Tabella actor

    Codice PHP:

    <?php


    require_once("connetti.php");



    $actor_id = $_GET["id"];
    $query = mysql_query ("SELECT * FROM actor WHERE actor_id=". $actor_id, $db);

    $row = mysql_fetch_array ($query);

    ?>
    questa e' quella iniziale, poi ce ne sono altre


    Questa per visualizzare la lista film

    Codice PHP:

    $query
    = "SELECT
    film_actor.actor_id as actor_id,
    actor.birthday as birthday,
    film_actor.film_id as film_id,
    film_actor.credited as credited,
    film_actor.genre as genre,
    film.film_id as film_ID,
    film.movie_title as movie_title,
    film.formats as formats,
    film.studio as studio,
    film.year as film_year,
    film.also_known as also_known,
    film.incollection as incollection,
    film.cover_front as cover_front,
    film.release_data as release_data,
    film.last_update as last_update,
    film.distributor as distributor
    FROM film_actor
    INNER JOIN film ON film_actor.film_id = film.film_id
    INNER JOIN actor ON film_actor.actor_id = actor.actor_id
    WHERE film_actor.actor_id = "
    . $actor_id;

    come fai a sapere che lavoro a questo progetto da 2 anni?

    mi sembra di non averlo scritto altrove, o mi sbaglio?

  12. #12
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    non ho capito questa parte

    Le prime sette variabili dovrebbero essere globali in tutto lo script, cioè mettile in un file esterno e poi le richiami con require_once.

  13. #13
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Citazione Originalmente inviato da blackskyisback Visualizza messaggio
    non ho capito questa parte

    darbula ci sei?

  14. #14
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Crea funzioni/carriera.php
    Codice PHP:
    $timezone = timezone_open('UTC');
    $now = date_create("now",$timezone);
    $ora = $now->format('Y-m-d H:i:s');
    $today = date_create('today',$timezone);
    $oggi = $today->format('Y-m-d H:i:s');
    $start = (strlen($row['start']) < 5) ? $row['start'].'-01-01 00:00:00' : $row['start'];
    $end = (!empty($row['end']) ? ((strlen($row['end']) < 5) ? $row['end'].'-01-01 00:00:00' : $row['end']) : $ora);
    Quando il file verrà incluso o richiesto le variabili diverranno globali al script in uso.
    blackskyisback likes this.

  15. #15
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Variabili globali?
    Ouch...

    I suggerimenti che do più spesso:


  16. #16
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Grazie darbula

  17. #17
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Lo stato globale sono un biglietto di sola andata per i bug.
    Poi fate voi ...

    I suggerimenti che do più spesso:


  18. #18
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Che bug?

  19. #19
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Tipicamente side effect, difficoltà nei test e problemi con incapsulamento/astrazione.
    C'è parecchia letteratura in merito:

    Concretamente rischi che le variabili definite globalmente siano modificate accidentalmente prima o poi (quando saranno passati mesi e riprenderai in mano il codice avendone dimenticate i dettagli), e quindi parti del codice che non hai modificato smetteranno di funzionare.

    In questo caso, in particolare, sono tutte espressioni definite in una sola riga, non vedo quale dovrebbe essere il guadagno nel portarle in un file esterno.

    A naso mi sembra anche che alcuni (buona parte?) dei conti in PHP si potrebbero evitare delegando il lavoro a SQL, ma non ho guardato il codice così in dettaglio.

    I suggerimenti che do più spesso:


  20. #20
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Voi siete i Guru in questo forum, io ne capisco ben poco, qual'e' la soluzione migliore d'adottare in questo caso per integare il codice di darbula nel mio script?

    Premetto che tutto lavora in localhost e mai verra' pubblicato su internet.

  21. #21
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Per evitare lo stato globale ti basta replicare quelle sette righe laddove il codice richiede l'uso di quelle variabili, quindi anziché include o require andrai scrivere direttamente il codice (anche se a guardarlo bene ora non capisco come sia risolta la dipendenza di $row ).
    Alternativamente puoi incapsulare il comportamento di quel codice in una funzione, che può essere definita all'inizio del codice o in un file separato (essendo una funzione non rappresenta uno stato [globale]) e usata al bisogno. Questo è utile più che altro se gli stessi risultati possono essere riutilizzati in altre pagine, altrimenti non ha molto senso.

    I suggerimenti che do più spesso:


  22. #22
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Mazanella guarda il mio codice nel dettaglio.
    $row['start'], $row['end'], today e now sono valori che non devono cambiare mai e proprio mai (in verità c'e una rara possibilità che il tempo di esecuzione coincida con l'ultimo momento di una data, cioè si pensi a 2020-09-03 23:59:59 se il tempo di esecuzione è un secondo o maggiore non è il vero momento ad essere utilizzato nel codice successivo ma quello precedente), si può pensare in modo astratto ad essi come immutabili (di conseguenza e razionalmente non esiste alcun motivo valido per cambiare tali valori).
    Nel mio codice utilizzo nomi di variabili diverse per evitare conflitti.
    http://forum.it.altervista.org/php-m...ml#post1454813
    $diff_film differenza film dall'inizio carriera di un'attore, $diff_current_year differenza anno corrente film
    mentre per il vecchio codice proposto per anno mese giorno uso $diff
    Codice PHP:
    $timezone = timezone_open('UTC');
    $now = date_create("now",$timezone);
    $start = (strlen($row['start']) < 5) ? "{$row['start']}-01-01 00:00:00" : $row['start'];
    $end = (!empty($row['end']) ? ((strlen($row['end']) < 5) ? "{$row['end']}-01-01 00:00:00" : $row['end']) : ($now->format("Y-m-d H:i:s")));
    $diff = date_create($end, $timezone)->diff( date_create($start, $timezone) );


    $testo = 'In The Business';

    $year = $diff->y;
    $mese = $diff->m;
    $giorni = $diff->d;
    if(
    $year) {
    echo
    '<font color="blue">' . $year . '</font>' . '&nbsp; years &nbsp;' . $testo ;
    } else {
    if(
    $mese == 0 && $giorni == 0) {
    echo
    'anno corrente';
    } elseif(
    $mese) {
    echo
    '<font color="red">' . $mese . '</font>' . '&nbsp; months &nbsp;' ;
    }
    if(
    $giorni) {
    echo
    '<font color="green">' . $giorni . '</font>' . '&nbsp; days &nbsp;' . $testo;
    }
    }
    vecchio codice.
    Mentre $day $month è usato unicamente per lo script dello zodiaco http://forum.it.altervista.org/members/darbula.html :)
    Ultima modifica di darbula : 03-09-2020 alle ore 13.51.10

  23. #23
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Temo non basti a giustificare uno stato globale.
    Tu puoi anche lavorare bene e utilizzare nomi differenti per gli identificatori, ma non c'è alcuna garanzia che chi prenda in mano il codice fra altri 2 anni faccia altrettanto, basta poco per dimenticarsene e dichiarare una nuova variabile $start che sovrascriva quella globale.

    Inoltre non ho ancora capito come viene risolta la dipendenza di $row: il file va forse incluso in un punto del codice in cui si dà per scontato che $row sia definito e contenga i valori che servono per l'esecuzione?

    In ogni caso le alternative più semplici e sicure non mancano, quindi non capisco perché sostenere su un approccio che è universalmente etichettato come bad practice.

    I suggerimenti che do più spesso:


  24. #24
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Sicuramente l'approccio migliore è in una funzione ma per apprendere il codice è sempre un bene mostrare il procedimento se poi non riesce a capire amen (esiste lo studio proprio per tale motivo).
    Si da per scontato che $row sia il risultato di una select con tali campi, in verità dovrebbe sempre anche esistere $row['dead'] nel ritorno dei valori della select (giustamente se non è deceduto non esiste ma più che altro lo si recupera Select dead FROM etc.) per validare fine carriera. (Comunque sono dettagli).
    Ultima modifica di darbula : 03-09-2020 alle ore 14.04.37

  25. #25
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Ricapitolando, e' esatta cosi la procedura?

    Crea funzioni/carriera.php

    Codice PHP:
    <?php
    Codice PHP
    :
    $timezone = timezone_open('UTC');
    $now = date_create("now",$timezone);
    $ora = $now->format('Y-m-d H:i:s');
    $today = date_create('today',$timezone);
    $oggi = $today->format('Y-m-d H:i:s');
    $start = (strlen($row['start']) < 5) ? $row['start'].'-01-01 00:00:00' : $row['start'];
    $end = (!empty($row['end']) ? ((strlen($row['end']) < 5) ? $row['end'].'-01-01 00:00:00' : $row['end']) : $ora);
    Quando il file verrà incluso o richiesto le variabili diverranno globali al script in uso.

    ?>

    Questo da includere nel mio codice

    Codice PHP:
    <?php
    if(isset($row['dead']) && ($row['dead'].'-01-01 00:00:00') == $end) {
    echo
    'fine carriera';
    } elseif(
    $ora == $end) {
    echo
    'carriera in corso';
    } else {
    echo
    'abbandono carriera';
    }


    if(isset(
    $row['release_data']) || isset($row['year'])) {
    //differenza film dall'inizio carriera di un'attore
    $release_data = isset($row['release_data']) ? $row['release_data'].' 00:00:00' : $row['year'].'-01-01 00:00:00';
    $diff_film = date_create($release_data, $timezone)->diff(date_create($start, $timezone));
    $testo = 'In The Business';

    $year_film = $diff_film->y;
    $mese_film = $diff_film->m;
    $giorni_film = $diff_film->d;
    if(
    $year_film) {
    echo
    '<font color="blue">' . $year_film . '</font>' . '&nbsp; years &nbsp;' . $testo ;
    } elseif(
    $mese_film == 0 && $giorni_film == 0) {
    echo
    'anno corrente';
    } elseif(
    $mese_film) {
    echo
    '<font color="red">' . $mese_film . '</font>' . '&nbsp; months &nbsp;' ;
    if(
    $giorni_film) {
    echo
    '<font color="green">' . $giorni_film . '</font>' . '&nbsp; days &nbsp;';
    }
    echo
    $testo;
    } else {
    echo
    '<font color="green">' . $giorni_film . '</font>' . '&nbsp; days &nbsp;' . $testo;
    }
    }

    if(isset(
    $release_data) && substr($oggi, 0, 4) == substr($release_data, 0, 4)) {
    //differenza anno corrente film
    $diff_current_year = date_create($release_data, $timezone)->diff(date_create($oggi, $timezone));
    $testo = 'In The Business';

    $year_current = $diff_current_year->y;
    $mese_current = $diff_current_year->m;
    $giorni_current = $diff_current_year->d;
    if(
    $year_current) {
    echo
    '<font color="blue">' . $year_current . '</font>' . '&nbsp; years &nbsp;' . $testo ;
    } elseif(
    $mese_current == 0 && $giorni_current == 0) {
    echo
    'anno corrente';
    } elseif(
    $mese_current) {
    echo
    '<font color="red">' . $mese_current . '</font>' . '&nbsp; months &nbsp;' ;
    if(
    $giorni_current) {
    echo
    '<font color="green">' . $giorni_current . '</font>' . '&nbsp; days &nbsp;';
    }
    echo
    $testo;
    } else {
    echo
    '<font color="green">' . $giorni_current . '</font>' . '&nbsp; days &nbsp;' . $testo;
    }
    }


    ?>

  26. #26
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Come detto non utilizzare variabili globali su funzioni/carriera.php ma semplicemente lo script lo creerà.
    Stai recuperando il campo dead nella tua select? Se non è defunto il valore è null ma come si comporta il mio codice non mostra errori?
    @mazanella secondo te perché una query simile viene restituita in modo errato http://forum.it.altervista.org/php-m...ml#post1454819
    Il messaggio successivo mostra le due query in uso e la seconda query dovrebbe essere una INNER JOIN mentre il problema sarebbe per un'ipotetica terza select.
    Ultima modifica di darbula : 03-09-2020 alle ore 14.25.43

  27. #27
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Problemi

    Fatal error: Cannot use object of type stdClass as array in E:\OpenServer\domains\localhost\cinema\members\cin ema.php on line 1716
    line 1716

    Codice PHP:
    $start = (strlen($row['start']) < 5) ? $row['start'].'-01-01 00:00:00' : $row['start'];

  28. #28
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Non capisco $start è una stringa mai un un'oggetto almeno fin quando non usata sull'oggetto DateTime.
    Prima di tale codice inserisci var_dump($row['start]);

  29. #29
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    penso che dipende da questo

    Codice PHP:

    $query
    = "SELECT
    film_actor.actor_id as actor_id,
    actor.birthday as birthday,
    film_actor.film_id as film_id,
    film_actor.credited as credited,
    film_actor.genre as genre,
    film.film_id as film_ID,
    film.movie_title as movie_title,
    film.formats as formats,
    film.studio as studio,
    film.year as film_year,
    film.also_known as also_known,
    film.incollection as incollection,
    film.cover_front as cover_front,
    film.release_data as release_data,
    film.last_update as last_update,
    film.distributor as distributor
    FROM film_actor
    INNER JOIN film ON film_actor.film_id = film.film_id
    INNER JOIN actor ON film_actor.actor_id = actor.actor_id
    WHERE film_actor.actor_id = "
    . $actor_id;

    $result = mysql_query( $query );
    if (!
    $result)
    die(
    "mySQL error: ". mysql_error());
    while(
    $row = mysql_fetch_object( $result ) ) : ?>
    HO cambiato cosi e' non da errore, penso che devo sostituire tutto il codice


    Codice PHP:

    <?php
    //Codice PHP:
    $timezone = timezone_open('UTC');
    $now = date_create("now",$timezone);
    $ora = $now->format('Y-m-d H:i:s');
    $today = date_create('today',$timezone);
    $oggi = $today->format('Y-m-d H:i:s');
    $start = (strlen($row->start) < 5) ? $row->start .'-01-01 00:00:00' : $row->start;
    $end = (!empty($row->end) ? ((strlen($row->end) < 5) ? $row->end .'-01-01 00:00:00' : $row->end) : $ora);
    //Quando il file verrà incluso o richiesto le variabili diverranno globali al script in uso.

    ?>

  30. #30
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Ovviamente dovrai inserire tutto il codice comprensivo delle sette variabili dal momento che non possiamo utilizzare funzioni/carriera.php
    Recupera anche il campo deceduto e indicami come appare il nome nel tuo database.
    Ultima modifica di darbula : 03-09-2020 alle ore 14.42.23

Pagina 1 di 5 123 ... UltimoUltimo

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •