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

    Principiante chiede: mettere record in array

    Salve, è la prima volta che posto in questo forum ... ho bisogno di aiuto e non so cosa fare ... uno script che non mi funziona ... cioè non produce l'output che vorrei ...
    codice:
    <?php
    
    function quote_smart($value){
    //togliere i backslash
    if (get_magic_quotes_gpc()){
    	$value=stripslashes($value);
    }
    //se il valore della variabile non è un numero si mette tra virgolette
    if (!is_numeric($value)) {
    $value="".mysql_real_escape_string($value)."";
    }
    return $value;
    }
    
    $sqlHost="localhost";
    $sqlUsername="..";
    $sqlPassword="....";
    $sqlDatabase="....";
    
    $link = mysql_connect($sqlHost,$sqlUsername,$sqlPassword);
    if(!$link){
    	die('Errore nel collegamento:'.mysql_error());
    }
    else{
    	die('Sei collegata!');
    }
    
    $sqlQuery=sprintf("Select * from utenti Where Nome_Studente=%s and Password=%s",
      quote_smart($_POST['Nome_Studente']),
      quote_smart($_POST['Password']));
    
    $result=mysql_query($sqlQuery);
    
    while($row=mysql_fetch_array($result,MYSQL_BOTH)){
    	print($row['ID_Studente']);
    }
    
    mysql_free_result($result);
    mysql_close($link);
    ?>
    mi dice "Sei collegata" (per cui presumo che la connessione sia ok ...) ma poi non vedo nient'altro (i dati della connessione li ho tolti ma in realtà ci sono e funzionano)

    Vorrei che qualcuno mi insegnasse come mettere il risultato di una query in un array e poi far apparire tutti i campi sullo schermo ...

    qualcuno può aiutarmi?

    vincenza
    sono troppe le cose che non so ... il mio pc non ne può più ... poverino ... aiutatemi, ve ne prego!

  2. #2
    se ci fai caso la riga

    die('Sei collegata!');

    sai cosa vuol dire? che quando la connessione al db è stata stabilita lo script semplciemente finisce! DIE infatti esce dalo script fermandolo..quindi occorre eliminarlo!
    per la tua richiesta guarda il tuo script modificato:

    Codice PHP:
    <?php

    function quote_smart($value){
    //togliere i backslash
    if (get_magic_quotes_gpc()){
        
    $value=stripslashes($value);
    }
    //se il valore della variabile non è un numero si mette tra virgolette
    if (!is_numeric($value)) {
    $value="".mysql_real_escape_string($value)."";
    }
    return 
    $value;
    }

    $sqlHost="localhost";
    $sqlUsername="..";
    $sqlPassword="....";
    $sqlDatabase="....";

    $link mysql_connect($sqlHost,$sqlUsername,$sqlPassword) || die('Errore nel collegamento:'.mysql_error());
    $result mysql_select_db($sqlDatabase$link);
    $sqlQuery=sprintf("Select * from utenti Where Nome_Studente=%s and Password=%s",
      
    quote_smart($_POST['Nome_Studente']),
      
    quote_smart($_POST['Password']));

    $result=mysql_query($sqlQuery);

    $tabella "<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"100%\">";
    // scrive in una riga di tabella i nomi dei campi
    $num_fields mysql_num_fields($result);
    for (
    $i=0$i<$num_fields$i++)
        
    $tabella .=  "<td>[b]".mysql_field_name($result)."[/b]</td>";
    $tabella .= "</tr>";
    while(
    $row=mysql_fetch_array($result,MYSQL_BOTH)){
            
    // restituisce il numero di campi
        
    $num_fields mysql_num_fields($result);
            
    $tabella .= "<tr>";
            
    // scrive in una riga il contenuto di ogni record
            
    for ($i=0$i<$num_fields$i++)
               
    $tabella .=  "<td>[b]".$row[$i]."[/b]</td>";
            
    $tabella .= "</tr>";
    }
    echo 
    $tabella."</table>";

    mysql_free_result($result);
    mysql_close($link);
    ?>

  3. #3
    Grazie ... in effetti l'errore era scemo e potevo evitarlo ... ma la pagina tua comunque mi ridà una schermata bianca ... senza errore ma bianca ... ho inserito i dati per la connessione ... ma la pagina è sempre terribilmente bianca ed io sono incapace di trovare l'errore ... mi sembra che tutto vada bene ...

    vincenza
    sono troppe le cose che non so ... il mio pc non ne può più ... poverino ... aiutatemi, ve ne prego!

  4. #4
    Meglio aggiungere un controllo dopo il collegamento a mysql con la funzione or die();

    Codice PHP:
    mysql_connect($sqlHost,$sqlUsername,$sqlPassword) or die('Errore nel collegamento:'.mysql_error()); 
    Ho visto che Emulman ha scritto || die(); invece di or die(); ...
    Può funzionare lo stesso?

  5. #5
    @vincenza

    ho provato anche io e funzia, si vede tutto..

    @devil
    sì || è lo stesso di or..usare l'uno o l'altro è la stessa cosa!

  6. #6
    Si vede?!!!

    e com'è possibile che io non lo veda?



    vincenza
    sono troppe le cose che non so ... il mio pc non ne può più ... poverino ... aiutatemi, ve ne prego!

  7. #7
    Forse era perchè avevo corretto un errore..prova questo

    Codice PHP:
    <?php

    function quote_smart($value){
      
    //togliere i backslash
      
    if (get_magic_quotes_gpc())
        
    $value=stripslashes($value);
      
    //se il valore della variabile non è un numero si mette tra virgolette
      
    if (!is_numeric($value))
        
    $value="".mysql_real_escape_string($value)."";
      return 
    $value;
    }

    $sqlHost="localhost";
    $sqlUsername="..";
    $sqlPassword="....";
    $sqlDatabase="....";

    $link mysql_connect($sqlHost,$sqlUsername,$sqlPassword) || die('Errore nel collegamento:'.mysql_error());
    $db mysql_select_db($sqlDatabase$link);
    $sqlQuery=sprintf("Select * from utenti Where Nome_Studente=%s and Password=%s",
      
    quote_smart($_POST['Nome_Studente']),
      
    quote_smart($_POST['Password']));

    $result=mysql_query($sqlQuery);

    $tabella "<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"100%\"><tr>";
    // scrive in una riga di tabella i nomi dei campi
    $num_fields mysql_num_fields($result);
    for (
    $i=0$i<$num_fields$i++)
        
    $tabella .=  "<td>[b]".mysql_field_name($result)."[/b]</td>";
    $tabella .= "</tr>";
    while(
    $row=mysql_fetch_array($result,MYSQL_BOTH)){
            
    // restituisce il numero di campi
        
    $num_fields mysql_num_fields($result);
            
    $tabella .= "<tr>";
            
    // scrive in una riga il contenuto di ogni record
            
    for ($i=0$i<$num_fields$i++)
               
    $tabella .=  "<td>[b]".$row[$i]."[/b]</td>";
            
    $tabella .= "</tr>";
    }
    echo 
    $tabella."</table>";

    mysql_free_result($result);
    mysql_close($link);
    ?>

  8. #8
    niente ........

    non dipenderà dal server ... dal database ... da una variabile impazzita?

    vincenza
    sono troppe le cose che non so ... il mio pc non ne può più ... poverino ... aiutatemi, ve ne prego!

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.