Visualizzazione dei risultati da 1 a 3 su 3

Discussione: resource id #

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    25

    resource id #

    Salve ho un problema ( sicuramente banale x voi )
    allora nel sito che sto creando ho una pagina di login :

    <?php
    include "connect.php";

    mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");

    $myusername=$_POST['myusername'];
    $mypassword=$_POST['mypassword'];

    session_start();
    $_SESSION['username']=$username;
    $_SESSION['password']=$password;
    $myusername = stripslashes($myusername);
    $mypassword = stripslashes($mypassword);
    $myusername = mysql_real_escape_string($myusername);
    $mypassword = mysql_real_escape_string($mypassword);

    $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
    $result=mysql_query($sql);
    $count=mysql_num_rows($result);
    if($count==1){
    session_register("myusername");
    session_register("mypassword");
    header("location:area.html");
    }
    else {
    echo "Username o Password Errati";
    }
    ?>

    fino a qua nessun problema , nel sito vi e' una pagina di richiesta preventivo ed ecco il codice di preventivo.php

    <?php
    session_start();

    $username=$_SESSION['username'];
    $password=$_SESSION['password'];
    $connessione = mysql_connect('localhost', 'root','');
    if ($connessione == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db('sito', $connessione)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

    $sql = mysql_query("SELECT nome FROM registrazione WHERE username = '$username'");
    $sql2 = mysql_query("SELECT cognome FROM registrazione WHERE username = '$username'");
    $query = "INSERT INTO preventivo (nome,cognome,email,tel,lavorazione,budget,data,lu ogo,messaggio)
    VALUES ('$sql','$sql2','$_POST[email]','$_POST[tel]','$_POST[lavorazione]','$_POST[budget]','$_POST[data]','$_POST[luogo]','$_POST[messaggio]')";
    mysql_query($query);
    header("locationreventivoinviato.html");
    ?>

    una volta che effettuo la richiesta di preventivo, nel database nei campi nome e cognome mi viene stampato il seguente messaggio resource id#4 , come risolvo il problema ??

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    96

    Re: resource id #

    Originariamente inviato da gio_vy
    Salve ho un problema ( sicuramente banale x voi )
    allora nel sito che sto creando ho una pagina di login :

    <?php
    include "connect.php";

    mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");

    $myusername=$_POST['myusername'];
    $mypassword=$_POST['mypassword'];

    session_start();
    $_SESSION['username']=$username;
    $_SESSION['password']=$password;
    $myusername = stripslashes($myusername);
    $mypassword = stripslashes($mypassword);
    $myusername = mysql_real_escape_string($myusername);
    $mypassword = mysql_real_escape_string($mypassword);

    $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
    $result=mysql_query($sql);
    $count=mysql_num_rows($result);
    if($count==1){
    session_register("myusername");
    session_register("mypassword");
    header("location:area.html");
    }
    else {
    echo "Username o Password Errati";
    }
    ?>

    fino a qua nessun problema , nel sito vi e' una pagina di richiesta preventivo ed ecco il codice di preventivo.php

    <?php
    session_start();

    $username=$_SESSION['username'];
    $password=$_SESSION['password'];
    $connessione = mysql_connect('localhost', 'root','');
    if ($connessione == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db('sito', $connessione)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

    $sql = mysql_query("SELECT nome FROM registrazione WHERE username = '$username'");
    $sql2 = mysql_query("SELECT cognome FROM registrazione WHERE username = '$username'");
    $query = "INSERT INTO preventivo (nome,cognome,email,tel,lavorazione,budget,data,lu ogo,messaggio)
    VALUES ('$sql','$sql2','$_POST[email]','$_POST[tel]','$_POST[lavorazione]','$_POST[budget]','$_POST[data]','$_POST[luogo]','$_POST[messaggio]')";
    mysql_query($query);
    header("locationreventivoinviato.html");
    ?>

    una volta che effettuo la richiesta di preventivo, nel database nei campi nome e cognome mi viene stampato il seguente messaggio resource id#4 , come risolvo il problema ??
    Ciao posta il codice di inserimento

  3. #3
    Prima di tutto non è necessario fare due query (con where identica) per recuperare dati presenti nella stessa tabella.
    Basta semplicemente

    Codice PHP:
    $sql mysql_query("SELECT nome, cognome FROM registrazione WHERE username = '$username'"); 
    Poi, per recuperare il risultato di una query, devi processarne i dati con l'istruzione mysql_fetch_array che restituisce, per ogni riga selezionata dalla query, un array associativo.

    Codice PHP:
    while($row mysql_fetch_array($sql);
    {
    $query "INSERT INTO preventivo (nome,cognome,email,tel,lavorazione,budget,data,luogo,messaggio) 
    VALUES ('"
    .$row['nome']."','".$row['cognome']."','$_POST[email]','$_POST[tel]','$_POST[lavorazione]','$_POST[budget]','$_POST[data]','$_POST[luogo]','$_POST[messaggio]')";

    Presta attenzione all'utilizzo dell'array $row !

    Un consiglio, pulisci sempre i dati provenienti dall'esterno.
    Saluti.

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.