Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [freephp]guida php mysql pratica modificato

    sono partito da questa guida per fare pratica, ho modificato i file di esempio semplificando, trasformato in semplice db tipo agenda telefonica, funziona tutto ma c'è il file view.php che continua a darmi questo errore:

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /www_my_webspace/view.php on line 12

    questo è il codice:

    <? include("top_foot.inc.php");
    include("config.inc.php");
    top();
    $db = mysql_connect($db_host, $db_user, $db_password);
    $id=$_GET['id'];
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $query = "SELECT nome,soprannome,città, FROM parente2 WHERE id='$id'";
    $result = mysql_query($query, $db);
    $row = mysql_fetch_array($result);
    echo "$row[nome]

    ";
    echo "$row[soprannome]

    ";
    echo "$row[città]

    ";
    echo "
    <a href=index.php>Torna alla pagina iniziale</a>
    ";
    echo "<a href=all.php>Visualizza tutti gli articoli</a>
    ";
    mysql_close($db);
    foot();
    ?>

    questi i dati server e versioni:

    Apache ver. 2.2.10 (Unix)
    PHP version 5.2.*
    MySQL ver. 5.0.51-community

    grazie in anticipo per le eventuali risposte

  2. #2
    $query = "SELECT nome,soprannome,città, FROM parente2 WHERE id='$id'";

    la virgola dopo città non ci vuole.

    gli apici su $id non servono

    non credo che sia un errore ma così a naso non userei lettere accentate nei nomi dei campi
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  3. #3
    Originariamente inviato da mtx_maurizio
    $query = "SELECT nome,soprannome,città, FROM parente2 WHERE id='$id'";

    la virgola dopo città non ci vuole

    gli apici su $id non servono

    non credo che sia un errore ma così a naso non userei lettere accentate nei nomi dei campi
    grazie per la virgola mi era sfuggita

    ho modificato pure l'accento sia nel database che nel codice

    gli apici stanno nel codice orginale e commentato nel sito di html.it oltre che nei file zippati che ho scaricato e provato e funzionava, comunque ho provato a toglierli ma non cambia nulla mi da lo stesso errore, invece se li lascio non mi da nessun errore ma mi salta completamente tutto il codice e vedo solo il top e e quei due link in fondo alla pagina

    in effetti scopo di questa pagine e visualizzarmi tutti quei dati che sono relativi ad un nominativo che trovo elencato in quest'altra pagina: (forse l'errore è qui)

    <?
    include("top_foot.inc.php");
    include("config.inc.php");
    top();
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $query = "SELECT nome, soprannome, citta FROM parente2 ORDER BY id DESC LIMIT 0,20";
    $result = mysql_query($query, $db);
    while ($row = mysql_fetch_array($result))
    {
    echo "<a href=\"view.php?id=$row[id]\">" . " - $row soprannome </a>
    ";
    }
    mysql_close($db);
    foot();
    ?>

  4. #4
    Codice PHP:
    <?
    include("top_foot.inc.php");
    include(
    "config.inc.php");
    top();
    $db mysql_connect($db_host$db_user$db_password);
    if (
    $db == FALSE)
    {
    die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php");
    // Se non concludi l'if il codice qui sotto viene eseguito solo se FALSE
    // quindi se la connessione funziona MAI
    mysql_select_db($db_name$db)
    or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $query "SELECT nome, soprannome, citta FROM parente2 ORDER BY id DESC LIMIT 0,20";
    $result mysql_query($query$db);
    while (
    $row mysql_fetch_array($result))
    {
    echo 
    "<a href=\"view.php?id=$row[id]\">" " - $row soprannome </a>
    "
    // Le parentesi quadre? $row[soprannome]
    }
    mysql_close($db);
    foot();
    ?>
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  5. #5
    oltre alle cose segnalate da te, mancavano due banalissime parentesi tonde alla funzione

    Codice PHP:
    $row mysql_fetch_array ($result$result_type); 
    del file vivew.php, che doveva essere scritta

    Codice PHP:
    $row = (mysql_fetch_array ($result$result_type)); 
    Grazie infinite per il tuo aiuto che è stato cmq preziosissimo

  6. #6
    ancora un'altro scoglio che non riesco a superare, per l'inserimento di nuovi dati nel db: problemi di password, la password è quella, controllato e mi fa anche connettere al phpmyadmin, quindi non è errata, poi se non è la password mi dice che non ho compilato i campi, insomma è come se non passassero i dati da questo file (ho usato il medoto GET per il form per visualizzare i dati e la pass era corretta)

    Codice PHP:
    <?
    include ("config.inc.php");
    include (
    "top_foot.inc.php");

    //intestazione
    top();
    ?>

    <form method="get" action="save.php">

    Nome:

    <input type="text" size="40" name="nome" />




    Soprannome:

    <input type="text" size="40" name="soprannome" />




    Città:

    <input type="text" size="40" name="citta" />




    Password:

    <input type="password" size="40" name="pass" />




    <input type="submit" value="Invia2" />

    </form>
    <?
    // chiusura pagina
    foot();
    ?>
    a questo file (la parte per aggiungere caratteri speciali è per le versioni anteriori al php 4)

    Codice PHP:
    <?
    include("top_foot.inc.php");
    include(
    "config.inc.php");
    top();

    if (
    $pass != $password): echo "Password errata";

    $nome=$_REQUEST['nome'];
    $soprannome=$_REQUEST['soprannome'];
    $città=$_REQUEST['citta'];

    elseif (
    trim($nome) == "" OR trim($soprannome) == "" OR trim($citta) == ""):
       echo 
    "I campi nome, soprannome e citta devono essere compilati!";
       else :
      
    $nome addslashes(stripslashes($nome));
      
    $soprannome addslashes(stripslashes($soprannome));
      
    $città addslashes(stripslashes($citta));
      
    $nome str_replace("<""&lt;"$nome);
      
    $nome str_replace(">""&gt;"$nome);   
      
    $soprannome str_replace("<""&lt;"$soprannome);
      
    $soprannome str_replace(">""&gt;"$soprannome);
      
    $città str_replace("<""&lt;"$citta);
      
    $città str_replace(">""&gt;"$citta);
      
    $testo nl2br($testo);
      
    $db mysql_connect($db_host$db_user$db_password);
      
    if (
    $db == FALSE)
      {  die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php"); }
      
    mysql_select_db($db_name$db)
        or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
        
    $query "INSERT INTO parente2 (nome, soprannome, città) VALUES ('$nome', '$soprannome', '$citta')";
        if (
    mysql_query($query$db))
        echo 
    "L'articolo è stato inserito correttamente";
      else
        echo 
    "Errore durante l'inserimento";
    //endif; 
      
    mysql_close($db);
    endif; 
    // chiude la verifica della presenza dei dati
    foot();
    ?>
    infine altro problema per la ricerca nel database, inserisco la parola chiave nella pagina di ricerca ma non mi restituisce alcun errore solo la pagina con intestazione e foot, ecco i file in questione

    search.php
    Codice PHP:
    <?
    include("top_foot.inc.php");
    include(
    "config.inc.php");
    top();
    ?>

    <form method=post action=result.php>
    <input type=text name=chiave><input type=submit value=cerca>

    </form>

    <?
    foot
    ();
    ?>
    result.php
    Codice PHP:
    <?
    include("top_foot.inc.php");
    include(
    "config.inc.php");
    top();

    $db mysql_connect($db_host$db_user$db_password);
    if (
    $db == FALSE)
    { die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php"); }
    mysql_select_db($db_name$db)
    or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

    $keys explode (","$chiave);

    $query "";
    reset ($keys);
    while (list(,
    $parola) = each ($keys))
    $parola trim($parola);
    if (
    $parola != "")
    $query .= " nome LIKE '%$parola%' OR soprannome LIKE '%$parola%' OR citta LIKE '%$parola%' OR ";
    }
    $query .= "0";

    $query "SELECT id, nome, soprannome, citta FROM parente2 WHERE " $query;

    $result mysql_query($query$db);
    while (
    $row mysql_fetch_array($result))
    { echo 
    "<a href=\"view.php?id=$row[id]\">" " - $row[soprannome]</a>
    "
    ; }
    echo 
    "
    <a href=index.php>Torna alla pagina iniziale</a>
    "
    ;
    echo 
    "<a href=all.php>Visualizza tutti gli articoli</a>
    "
    ;
    echo 
    "<a href=search.php>Effettua una nuova ricerca</a>";
    foot()
    ?>

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.