Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Php e mysql

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    67

    Php e mysql

    Stò cercando di estrarre dal db titolo e sottotitolo da far comparire nella home pag del mio sito e creare, per ciascun titolo, un link che permetta al visitatore di aprire l'intero articolo in una pagina nuova.
    Al momento sono riuscito ad estrarre dal db titolo e sottotitolo, ma non riesco ad aprire l'intero articolo.

    Qualche volenteroso può aiutarmi perchè stò sbattendo da tempo la testa contro una moltitudine di muri ?

    grazie
    neke.

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    posta il codice e vediamo che si può fare

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    67
    $db = @mysql_connect($host, $user, $pass);
    //var_dump($db);
    mysql_select_db($database, $db);
    // esecuzione prima query
    $count = mysql_query("SELECT COUNT(id_file) tymce");
    $res_count = mysql_fetch_row($count);
    // numero totale di records
    $tot_records = $res_count[0];
    // risultati per pagina(secondo parametro di LIMIT)
    $per_page = 3;

    $query= "SELECT tymce.titolo, tymce.sottotitolo,tymce.id_file, tymce.directory, tymce.messaggio, foto.filename FROM tymce LEFT OUTER JOIN foto ON tymce.id_file = foto.id LIMIT $per_page ";
    // echo $querylimit;
    $result = mysql_query ($query);
    while ($row = mysql_fetch_array($result)) {
    //echo "<div class=\"content\">";
    $id= $row['id_file'];
    echo "<table border=\"0px\" WIDTH=\"95%\">";
    echo "<tr >";
    echo "<td>";/////////
    echo "<table width=\"100%\" border=\"0\">";
    echo "<tr >";
    echo "<td align= \"left\" valign= \"top\">[b] <font color=\"#616161\" size=\"4\" rowspan=\"2\"> ".$row['titolo'] = ucwords(strtolower(stripslashes($row['titolo'])))."";
    echo " </td>";
    echo "</tr >";
    echo "<tr >";
    echo " </td>";
    echo "<td align= \"left\" valign= \"top\">[b] <font color=\"#818181\" size=\"-2\">".$row['sottotitolo'] = strtolower(stripslashes($row['sottotitolo']))."";
    echo "&nbspcontinua...</td></tr >";
    echo "</table>";
    echo "</td>";
    echo "</tr >";
    echo "</table >";
    }

    ?>

    questa è lo script per estrarre i titoli dei primi tre articoli

    il seguente script è quello della pagina che dovrebbe recuperare l'ID e visualizzare l'articolo intero:

    $id = $_GET['id'];
    mysql_select_db($database, $db);
    $count = mysql_query("SELECT COUNT(id_file) tymce");
    $res_count = mysql_fetch_row($count);
    // numero totale di records
    $tot_records = $res_count[0];
    // risultati per pagina(secondo parametro di LIMIT)
    $per_page = 1;
    // numero totale di pagine
    $tot_pages = ceil($tot_records / $per_page);
    // pagina corrente
    $current_page = (!isset($_GET['index'])) ? 1 : (int)$_GET['index'];
    // primo parametro di LIMIT
    //$primo = ($current_page - 1) * $per_page;
    $query= "SELECT tymce.titolo, tymce.sottotitolo,tymce.data, tymce.directory, tymce.messaggio, foto.filename FROM tymce WHERE '$id' = tymce.id_file LEFT OUTER JOIN foto ON tymce.id_file = foto.id LIMIT $per_page";
    var_dump($query);
    // echo $querylimit;
    $result = mysql_query ($query);
    while ($row = mysql_fetch_array($result)) {
    echo "<table border=\"1px\">";
    echo "<tr >";
    echo "<td align= \"left\" valign= \"top\">[b] <font color=\"#143EFF\" size=\"4\">".$row['titolo']."";
    echo " </td>";
    echo "</tr >";
    echo "<tr >";
    echo "<td align= \"left\" valign= \"top\">[b] <font color=\"#143EFF\" size=\"3\">".$row['sottotitolo']."";
    echo " </td>";
    echo "</tr >";
    echo "<tr >";
    echo "<td align= \"left\" valign= \"top\">[b] <font color=\"#143EFF\" size=\"3\">[img].$row['directory'].'/'.$row['filename'].[/img]";
    echo "</td>";
    echo "</tr >";
    echo "<tr >";
    echo "<td> ".$row['messaggio']."";
    echo " </td>";
    echo "</tr>";
    echo "</table>";
    }
    ?>


    speriamo bene...

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    intanto una cosa salta subito all'occhio
    a href='index.php?page=new?id=$id'

    la get non si costruisce così
    ma index.php?var1=val1&var2=val2... etc etc dopo il ? ci vanno gli &

    quindi cambia
    echo "&nbspcontinua...</td></tr >";

    con
    echo "&nbspcontinua...</td></tr >";

  5. #5
    Utente di HTML.it L'avatar di DFN
    Registrato dal
    Mar 2011
    Messaggi
    26
    codice:
    $query= "SELECT tymce.titolo, tymce.sottotitolo,tymce.data, tymce.directory, tymce.messaggio, foto.filename
    FROM tymce 
    LEFT JOIN foto ON tymce.id_file = foto.id 
    WHERE '$id' = tymce.id_file LIMIT $per_page";
    in primis, JOIN prima del WHERE

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    67
    HO fatto come mi hai suggerito e riesco a vedere la pagina in cui dovrebbe apparire l'articolo ma che acora non vedo, ma in compenso mi compare a video il seguente codice:

    resource(1) of type (mysql link) string(193) "SELECT tymce.titolo, tymce.sottotitolo,tymce.data, tymce.directory, tymce.messaggio, foto.filename FROM tymce WHERE tymce.id_file = '44' LEFT OUTER JOIN foto ON tymce.id_file = foto.id LIMIT 1"

    l'id 44 è passato da una pagina all'altra...

  7. #7
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    riedit
    come non detto....... non avevo visto il join perchè è dopo il where

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    67
    eliminando i vari "var_dump" mi restituisce la pagina pulita ma non riesco a richiamare l'articolo associato ad un determintato id.
    mi sa che faccio confusione nella query ????

  9. #9
    Utente di HTML.it L'avatar di DFN
    Registrato dal
    Mar 2011
    Messaggi
    26
    Originariamente inviato da bstefano79
    ti manca la tabella foto nella clausola FROM

    FROM tymce, foto WHERE
    ce l'ha, è nella join, mi mi pare che non funzi se la join è dopo il where

  10. #10
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    Originariamente inviato da DFN
    ce l'ha, è nella join, mi mi pare che non funzi se la join è dopo il where
    si infatti avevo modificato il mio messaggio, non avevo visto il join proprio perchè non me lo aspettavo dopo WHERE

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