Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di allin81
    Registrato dal
    Mar 2011
    Messaggi
    1,875

    mysql_result per php 7, come lo modifico?

    Salve

    avrei bisogno di modificare questa vecchia interrogazione per php 7
    In pratica ho bisogno di contare il numero dei voti per poi tirare fuori la media.

    Su php5 usavo questo codice, ma sul 7 mi da errore perche' mysql_result non funziona piu':

    codice:
    $conteggio_voti="select SUM(voto_hotel) as quanti, DATE_FORMAT(data_commento, '%d/%m/%Y') AS data_commento FROM commenti where hotel=\"$id_hotel\" and data_commento >='$un_anno_e_mezzo' ";
    $totale_voti = mysql_result($conteggio_voti,0,'quanti');
    come posso modificare l'ultima riga per poterlo far funzionare su php7?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    189
    Hai solo bisogno di impostare $row['quanti'] https://www.php.net/manual/en/mysqli...etch-assoc.php che comunque sarà il totale o maggiore o uguale un anno e mezzo e non la media.
    usa Google per cercare mysqli Equivalent mysql_result.
    Mysql ha la funzione di aggregazione AVG per calcolare la media.
    ORDER BY COL di DATE_FORMAT e non per alias https://www.html.it/articoli/funzion...mpo-con-mysql/ Mysql se somma numeri in virgola mobile può approssimare il valore ma potrebbe non essere il vero valore reale poiché per l'appunto approssimato mentre se effettua la somma tra numeri interi sarà sempre il valore reale.
    Ultima modifica di darbula; 01-07-2020 a 13:24

  3. #3
    Utente di HTML.it L'avatar di allin81
    Registrato dal
    Mar 2011
    Messaggi
    1,875
    non ho capito
    se lascio la riga $totale_voti mi da questo errore:


    Fatal error: Uncaught Error: Call to undefined function mysql_result() in /home/...

    Quindi non ho ben capito cosa devo fare

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    189
    Fai copia incolla della funzione che ho postato il link e cancella ogni $row['chiave'] dovrai semplicemente utilizzare $row['quanti'].
    Se ti indico un link è perché c'è il codice che fa al caso tuo.
    Ovviamente dovrai anche cambiare la query di default con quella che utilizzi tu.

  5. #5
    Utente di HTML.it L'avatar di allin81
    Registrato dal
    Mar 2011
    Messaggi
    1,875
    adesso ho usato

    codice:
    $dueAnniFa="2018-07-01";
    $conteggio_voti="select SUM(voto_hotel) as quanti, DATE_FORMAT(data_commento, '%d/%m/%Y') AS data_commento FROM recensioni where hotel=\"$id_hotel\" and data_commento >='$dueAnniFa' ";
    $result_conteggio_voti = $conn->query($conteggio_voti);
    while($row_conteggio_voti = $result_conteggio_voti->fetch_assoc()) {
    $quanti = $row_conteggio_voti["quanti"];
    echo"conteggio: $conteggio_voti";
    }
    sembra funzionare

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.