2010-08-17 6 views
0

J'ai une table dans ma base de données MS SQL et j'utilise PHP.PHP et MS SQL - Foreach Loop?

Ce que je suis en train de faire est:

Foreach utilisateur dans le tableau, obtenir son âge et couleur préférée. Et pour chaque entrée je veux l'éditer avant qu'elle ne soit affichée. Par exemple, chaque utilisateur qui est récupéré et affiché sur la page Web sera un lien hypertexte. Son âge sera hyperlié et la couleur sera également hyperliée.

Incase Je ne clair au-dessus, laissez-moi vous expliquer dans un court code psuedo (désolé):

foreach(item i in table.items) 
{ 
    var $name = i.name; 
    var $age = i.age; 
    var $color = i.color; 

    webpage.display("<a href="http://domain.com/page.php?name=$name">$name</a>"); 
    webpage.display("<a href="">$age</a>"); 
    webpage.display("<a href="">$color</a>"); 
} 

Quelqu'un peut-il me aider s'il vous plaît/me mettre dans la bonne direction?

Merci

+0

Que voulez-vous dire quand vous dites - 'je veux le modifier avant qu'il ne soit displayed'? Si vous voulez le modifier, ne pouvez-vous pas afficher les valeurs dans un formulaire HTML? – vikmalhotra

+0

Je veux dire que je dois l'éditer par programmation avant de le présenter à l'utilisateur. –

Répondre

2

Combien avez-vous besoin?

$serverName = "xxx"; 
$uid = "xxx";  
$pwd = "xxx";  
$databaseName = "xxx"; 

$connectionInfo = array("UID"=>$uid,        
         "PWD"=>$pwd,        
         "Database"=>$databaseName); 

/* Connect using SQL Server Authentication. */  
$conn = sqlsrv_connect($serverName, $connectionInfo);  

$tsql = "SELECT name, age, color FROM USER"; 

/* Execute the query. */  
$stmt = sqlsrv_query($conn, $tsql);  

if ($stmt)  
{  
    while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) 
    { 
    $name = $row["name"]; 
    $age = $row["age"]; 
    $color = $row["color"]; 
    echo "<a href='http://domain.com/page.php?name=$name'>$name</a>"; 
    echo "<a href=''>$age</a>"; 
    echo "<a href=''>$color</a>"; 
    } 
}  
else  
{  
    echo "Submission unsuccessful."; 
    die(print_r(sqlsrv_errors(), true));  
} 

/* Free statement and connection resources. */  
sqlsrv_free_stmt($stmt);  
sqlsrv_close($conn); 

Référence:

+0

Merci beaucoup :) –

1

Je suppose que vous passez le résultat de base de données comme un tableau (voir mssql_fetch_array)

foreach($items as $row) { 
    $name = $row["name"]; 
    $age = $row["age"]; 
    $color = $row["color"]; 
    echo "<a href='http://domain.com/page.php?name=$name'>$name</a>"; 
    echo "<a href=''>$age</a>"; 
    echo "<a href=''>$color</a>"; 
}