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

    mysql_fetch_array($result)

    ho un piccolo lapsus...

    per richiamere i dati da un db si usa la funzione mysql_fetch_array($result)
    ad es:

    codice:
    $query = "SELECT * 
                    FROM table";
    $result = mysql_query($query)
    or die("
    Invalid query: $query\n
    \n" . mysql_error());
    while($myrow = mysql_fetch_array($result)){
    	$campo1 = $myrow["campo1"];
    	$campo2 = $myrow["campo2"];
    }
    e fin qui tutto bene.

    io vorrei però che campo due oltre ad uscire nel ciclo esca anche prima come titolo (quindi al di fuori del ciclo):
    codice:
    $query = "SELECT * 
                    FROM table";
    $result = mysql_query($query)
    or die("
    Invalid query: $query\n
    \n" . mysql_error());
    
    $row = mysql_fetch_array($result);
    $campo2 = $row["campo2";
    echo "Titolo".$campo2;
    
    while($myrow = mysql_fetch_array($result)){
    	$campo1 = $myrow["campo1"];
    	$campo2 = $myrow["campo2"];
    }
    se richiamo il campo con
    $row = mysql_fetch_array($result);
    $campo2 = $row["campo2";

    non visualizzo più i dati nel ciclo e cmq sono certa che non sia un metodo corretto.

    Potreste aiutarmi?


  2. #2
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    A te interessa avere come titolo il campo2 del primo record che incontri o a ripetizione di tutti i record?

    nel primo caso devi fare due query separate:

    $query1 = "SELECT * FROM table Limit 0,1";
    $result1 = mysql_query($query1)
    or die("
    Invalid query: $query\n
    \n" . mysql_error());

    $row1 = mysql_fetch_array($result1);
    $campo2 = $row1["campo2"];
    echo "Titolo".$campo2;

    $query2 = "SELECT * FROM table";
    $result2 = mysql_query($query2)

    while($myrow = mysql_fetch_array($result2)){
    $campo1 = $myrow["campo1"];
    $campo2 = $myrow["campo2"];
    }

    Nel secondo caso va bene come hai già scritto tu

    $query = "SELECT *
    FROM table";
    $result = mysql_query($query)
    or die("
    Invalid query: $query\n
    \n" . mysql_error());
    while($myrow = mysql_fetch_array($result)){
    $campo2 = $myrow["campo2"];
    echo $campo2;
    $campo1 = $myrow["campo1"];

    }

  3. #3
    ho risolto anch'io come dici tu.

    Il campo2 doveva fare da titolo e sotto, a seguire, dovevano uscire tutti gli altri record più il campo2 nel caso lo avessi voluto modificare.

    Mi chiedevo solo se per norma si devono eseguire due query o se era possibile estrapolare lo stesso valore in due punti diversi dello script con una funzione simile a mysql_fetch_array(); o con essa stessa.

    grazie lo stesso.


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.