Pagina 2 di 4 PrimoPrimo 1234 UltimoUltimo
Visualizzazione risultati 31 fino 60 di 102

Discussione: Mettere nel sito "I più visti"

  1. #31
    Guest

    Predefinito

    Ok, io però quelle funzioni le ho scrotte con mysqli, non mysql...

    Quindi all'interno di oguna delle due funzioni aggiungi
    Codice PHP:
    $mysqli = new mysqli("localhost", "gruppoalveo", "password", "my_gruppoalveo");

    PS
    http://it1.php.net/manual/it/book.mysqli.php
    Ultima modifica di tampertools : 30-03-2014 alle ore 14.31.27

  2. #32
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Ok, io però quelle funzioni le ho scrotte con mysqli, non mysql...

    Quindi all'interno di oguna delle due funzioni aggiungi
    Codice PHP:
    $mysqli = new mysqli("localhost", "gruppoalveo", "password", "my_gruppoalveo");

    PS
    http://it1.php.net/manual/it/book.mysqli.php
    Ho modificato e come vedi da ancora i due errori originali come quando non c'era $mysqli = new mysqli("localhost", "gruppoalveo", "password", "my_gruppoalveo");

    I dati di connessione li prendeva già

  3. #33
    Guest

    Predefinito

    Quella riga l'hai messa come prima cosa nella funzione piu_visitate?

  4. #34
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Quella riga l'hai messa come prima cosa nella funzione piu_visitate?
    Si

    Codice PHP:
    <?php
    $mysqli
    = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    error_reporting (E_ALL);
    ...

  5. #35
    Guest

    Predefinito

    No, deve essere all'interno della funzione:
    Codice PHP:
    error_reporting (E_ALL);
    function
    piu_visitate ($n) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "password", "my_gruppoalveo");
    ...
    (E anche nella funzione contatore)
    Ultima modifica di tampertools : 30-03-2014 alle ore 14.48.49

  6. #36
    Guest

    Predefinito

    Va un po' meglio, l'ho messo in entrambi

    Codice PHP:
    //Mette i dati nel DB e aumenta il contatore ad ogni visita
    function contatore($title) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    $url = $_SERVER['PHP_SELF'];
    $esiste = $mysqli->query ("SELECT * FROM visitate WHERE url='$url'");
    if (
    $esiste->num_rows == 0) {
    $mysqli->query ("INSERT INTO visitate VALUES ('$title', '$url', 1");
    }
    else {
    $old = $esiste->fetch_array;
    $visite = $old['visite'] + 1;
    $mysqli->query("UPDATE visitate SET pagina='$title', visite=$visite WHERE url='$url'");
    }
    }

    //Estrae i dati dal DB e crea la sequenza delle pagine più viste
    function piu_visitate($n) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    $visti = $mysqli->query("SELECT * FROM visitate ORDER BY visite DESC LIMIT 0,$n");
    if (
    $visti->num_rows > 0) {
    echo
    "<ul id='piu_visitate'>";
    while (
    $link = $visti->fetch_array) {
    echo
    "<li>";
    echo
    "<a href='" . $link['url'] . "'>" . $link['pagina'] . "</a>";
    echo
    "</li>";
    }
    echo
    "</ul>";
    }
    }
    Ultima modifica di gruppoalveo : 30-03-2014 alle ore 15.08.30 Motivo: Aggiornamento

  7. #37
    Guest

    Predefinito

    Prova a sostituire
    Codice PHP:
    while ($link = $visti->fetch_array) {
    Con
    Codice PHP:
    while ($link = $visti->fetch_array(MYSQLI_ASSOC)) {
    E vediamo se se ne va quel notice...

  8. #38
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Prova a sostituire
    Codice PHP:
    while ($link = $visti->fetch_array) {
    Con
    Codice PHP:
    while ($link = $visti->fetch_array(MYSQLI_ASSOC)) {
    E vediamo se se ne va quel notice...
    Va meglio

  9. #39
    Guest

    Predefinito

    Ora la funzione piu_visitate funziona...
    È il turno di contatore()...

    Nel file dove definisci la funzione metti error_reporting(E_ALL)...

  10. #40
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Ora la funzione piu_visitate funziona...
    È il turno di contatore()...

    Nel file dove definisci la funzione metti error_reporting(E_ALL)...
    C'è già dove ci sono i codici, nella pag. visitate.php
    Ultima modifica di gruppoalveo : 30-03-2014 alle ore 16.14.19

  11. #41
    Guest

    Predefinito

    Ok... dove richiami la funzione?
    Nel file visitate.php o nel file principale della pagina?

  12. #42
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Ok... dove richiami la funzione?
    Nel file visitate.php o nel file principale della pagina?
    Il richiamo lo messo in tutte le pagine in fondo, come mi hai detto tu

    Codice PHP:
    <?php
    contatore
    ("...");
    ?>

  13. #43
    Guest

    Predefinito

    E nel db continua a esserci solo pa riga inserita da te?
    Ultima modifica di tampertools : 30-03-2014 alle ore 16.27.13

  14. #44
    Guest

    Predefinito

    Si, non stampa

  15. #45
    Guest

    Predefinito

    Ok, mi puoi far vedere il codice della funzione?
    Hai messo $mysqli = new mysqli....?

  16. #46
    Guest

    Predefinito

    Codice PHP:
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    Non è che per caso entra in conflitto con quella che uso in tutte le pagine?

    Codice PHP:
    $host = 'localhost'; //nome host
    $username = 'gruppoalveo'; //username che utilizzi per accedere a phpmyadmin
    $password = 'pwd'; //password che utilizzi per accedere a phpmyadmin
    $db = 'my_gruppoalveo'; // nome del database

    //---connessione----------------------------------------------------
    $connessione = mysql_connect($host,$username,$password);
    if (!
    $connessione) {
    die (
    'Non riesco a connettermi: ' . mysql_error());
    }

    //---e selezione del db----------------------------------------------------
    $db = mysql_select_db($db, $connessione);
    if (!
    $db) {
    die (
    "Errore nella selezione del database: " . mysql_error());
    }
    Ultima modifica di gruppoalveo : 30-03-2014 alle ore 16.55.23 Motivo: Aggiornamento

  17. #47
    Guest

    Predefinito

    No non va in conflitto. ..

    Mi fai vedere il codice della funzione contatore?

  18. #48
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    No non va in conflitto. ..

    Mi fai vedere il codice della funzione contatore?
    Codice PHP:
    function contatore($title) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    $url = $_SERVER['PHP_SELF'];
    $esiste = $mysqli->query ("SELECT * FROM visitate WHERE url='$url'");
    if (
    $esiste->num_rows == 0) {
    $mysqli->query ("INSERT INTO visitate VALUES ('$title', '$url', 1");
    }
    else {
    $old = $esiste->fetch_array;
    $visite = $old['visite'] + 1;
    $mysqli->query("UPDATE visitate SET pagina='$title', visite=$visite WHERE url='$url'");
    }
    }

  19. #49
    Guest

    Predefinito

    Sostituisci
    Codice PHP:
    $old = $esiste->fetch_array;
    Con
    Codice PHP:
    $old = $esiste->fetch_array(MYSQLI_ASSOC);

  20. #50
    Guest

    Predefinito

    Fatto, ma è come prima

  21. #51
    Guest

    Predefinito

    Aggiungi qualche echo per capire dove si blocca...
    Codice PHP:
    function contatore($title) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    $url = $_SERVER['PHP_SELF'];
    $esiste = $mysqli->query ("SELECT * FROM visitate WHERE url='$url'");
    echo
    "Contatore<br>"; //Qui
    if ($esiste->num_rows == 0) {
    echo
    "Questa pagina "; //Qui
    $mysqli->query ("INSERT INTO visitate VALUES ('$title', '$url', 1");
    echo
    "non è mai stata visitata"; //Qui
    }
    else {
    $old = $esiste->fetch_array(MYSQLI_ASSOC);
    echo
    "Questa pagina ha ricevuto "; //Qui
    $visite = $old['visite'] + 1;
    echo
    $visite; //Qui
    $mysqli->query("UPDATE visitate SET pagina='$title', visite=$visite WHERE url='$url'");
    echo
    " visite"; //Qui
    }
    }
    Ultima modifica di tampertools : 30-03-2014 alle ore 19.48.00

  22. #52
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Aggiungi qualche echo per capire dove si blocca...
    Codice PHP:
    function contatore($title) {
    $mysqli = new mysqli("localhost", "gruppoalveo", "pwd", "my_gruppoalveo");
    $url = $_SERVER['PHP_SELF'];
    $esiste = $mysqli->query ("SELECT * FROM visitate WHERE url='$url'");
    echo
    "Contatore<br>"; //Qui
    if ($esiste->num_rows == 0) {
    echo
    "Questa pagina "; //Qui
    $mysqli->query ("INSERT INTO visitate VALUES ('$title', '$url', 1");
    echo
    "non è mai stata visitata"; //Qui
    }
    else {
    $old = $esiste->fetch_array(MYSQLI_ASSOC);
    echo
    "Questa pagina ha ricevuto "; //Qui
    $visite = $old['visite'] + 1;
    echo
    $visite; //Qui
    $mysqli->query("UPDATE visitate SET pagina='$title', visite=$visite WHERE url='$url'");
    echo
    " visite"; //Qui
    }
    }
    Mi sembra come prima, tranne che per questo echo Contatore
    Questa pagina non è mai stata visitata
    Ultima modifica di gruppoalveo : 30-03-2014 alle ore 19.55.32

  23. #53
    Guest

    Predefinito

    Prova a modificare
    Codice PHP:
    $mysqli->query ("INSERT INTO visitate VALUES ('$title', '$url', 1");
    In
    Codice PHP:
    $mysqli->query ("INSERT INTO visitate (pagina, url, visite) VALUES ('$title', '$url', 1");
    Ultima modifica di tampertools : 30-03-2014 alle ore 20.07.17

  24. #54
    Guest

    Predefinito

    Come prima, non riesce ad inserire i dati nel DB

  25. #55
    Guest

    Predefinito

    Avevo dimenticato una parentesi

    Codice PHP:
    $mysqli->query ("INSERT INTO visitate (pagina, url, visite) VALUES ('$title', '$url', 1)");

  26. #56
    Guest

    Predefinito

    Quasi ci siamo

  27. #57
    Guest

    Predefinito

    Citazione Originalmente inviato da gruppoalveo Visualizza messaggio
    Quasi ci siamo
    Perché quasi?
    Mi sembra che manchi solo un po di css

  28. #58
    Guest

    Predefinito

    Sembra che vada bene, ora si tratta di fare una leggera modifica al css. Io vorrei far stampare come la parte rossa:

    Codice PHP:
    //Estrae i dati dal DB e crea la sequenza delle pagine più viste
    function piu_visitate($n) {
    $mysqli = new mysqli("localhost", "root", "root", "gruppoalveo");
    $visti = $mysqli->query("SELECT * FROM visitate ORDER BY visite DESC LIMIT 0,$n");
    if ($visti->num_rows > 0) {
    echo "<ul id='piu_visitate'>";
    while ($link = $visti->fetch_array(MYSQLI_ASSOC)) {
    echo "<li>";
    echo "<a href='" . $link['url'] . "'>" . $link['pagina'] . "</a>";
    echo "</li>";
    }
    echo "</ul>";
    }
    }
    ?>

    <div style="background-color:#ffffff; margin-top:-5px; margin-bottom:15px; padding-top:5px; padding-bottom:5px; text-align:left; font-size:12px; color:#004080;">
    <!--&nbsp;&nbsp;1.&nbsp;&nbsp;Nome pagina
    <br>
    <br>
    &nbsp;&nbsp;2.&nbsp;&nbsp;Nome pagina
    <br>
    <br>
    &nbsp;&nbsp;3.&nbsp;&nbsp;Nome pagina
    <br>
    <br>
    &nbsp;&nbsp;4.&nbsp;&nbsp;Nome pagina-->

    <?php
    piu_visitate
    (4);
    ?>
    Ultima modifica di karl94 : 30-03-2014 alle ore 21.34.16

  29. #59
    Guest

    Predefinito

    Non ti basta scrivere ol anziché ul?

  30. #60
    Guest

    Predefinito

    Citazione Originalmente inviato da tampertools Visualizza messaggio
    Non ti basta scrivere ol anziché ul?
    Questo mi sembra meglio (è solo un immagine di come lo vorrei). Poi ho notato che quando si entra nella home, scatta al posto superiore, questo non va bene perché ogni volta che entra un utente dall'inizio non deve essere calcolato.


Pagina 2 di 4 PrimoPrimo 1234 UltimoUltimo

Regole di scrittura

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