0

私はPHPが初めてで、いくつかの基本的な機能を実行するのに十分なことを学ぼうとしています. ユーザーが自分で編集して再表示するためのテーブルを作成できましたが、質問がありました。以下のスクリプトを使用して、ユーザーはさまざまな製品のスキル レベルを入力できます。「0」または空白を入力した各セルを強調表示できるようにしたかったのです。ユーザーの入力は 0 から 5 の間になります (まだ入力していない場合は空白になります)。

これはすべて私のローカルホストで行われているため、すべてのセキュリティ対策が十分に整っていないことは認めます。

私は多くの投稿を読み、自分で理解しようとしましたが、根本的に間違っていると信じています.

これに関するご支援をいただければ幸いです。私は、コーディングを手伝ってくれる人のために(ペイパル経由で)ビールを買うことで知られています:)

データベースの結果を出力するための既存のコードは次のとおりです。

<?php
//This will connect to the database in order to begin this page
mysql_connect("localhost", "root", "time2start") or die (mysql_error());
//Now we will select the database we need to talk to
mysql_select_db("joomla_dev_15") or die (mysql_error());
$query = "SELECT * FROM enterprise_storage WHERE id=1";
$result = mysql_query($query) or die (mysql_error());
echo "<table border='1'>";
echo "$row";
echo "<tr> <th>Product</th> <th>Wayne Beeg</th> <th>Paul Hamke</th> <th>Steve Jaczyk</th>       <th>David Jontow</th> <th>Ed MacDonald</th> <th>Michael Munozcano</th> <th>Ron Shaffer</th>  <th>Luke Soares</th>  <th>Josh Wenger</th> </tr>";
// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr><td>"; 
echo $row['model'];
echo "</td><td>"; 
echo $row['beeg'];
echo "</td><td>"; 
echo $row['hamke'];
echo "</td><td>"; 
echo $row['jaczyk'];
echo "</td><td>"; 
echo $row['jontow'];
echo "</td><td>"; 
echo $row['macdonald'];
echo "</td><td>"; 
echo $row['munozcano'];
echo "</td><td>"; 
echo $row['shaffer'];
echo "</td><td>"; 
echo $row['soares'];
echo "</td><td>"; 
echo $row['wenger'];
echo "</td></tr>"; 
} 
echo "</table>";
?>
<FORM>
<INPUT TYPE="BUTTON" VALUE="Return to the Home Page"       ONCLICK="window.location.href='http://localhost/~user/joomla15/custom/skilldisplay.php'"> 
</FORM>
4

3 に答える 3

1

多分

while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr>";
foreach($row as $content) {
    if($content == 0) {
        echo "<td style='background-color:gray;'>";
    }
    else {
        echo "<td style='background-color:green;'>";
    }
    echo $content . "</td>";
}
echo $row['wenger'];
echo "</td>"; 
}
echo "</tr></table>";
于 2012-04-10T19:59:35.290 に答える
0

このようなことを試してください

これを生成されたドキュメントに追加します

<style type="text/css">
    .red{ background-color: red; }
</style>

これはあなたのPHPです:

<?php
// sanitize value
$value = trim($row['model']);
$class = (empty($value)) ? 'red' : '';

// display
echo "<td class=\"$class\">$value</td>"; 
...
?>
于 2012-04-10T20:00:10.057 に答える
0

わかりました、それで私は最終的にそれを機能させることができました。上記の2つの返信は、これを行うための正しいアプローチを理解するのに役立ちました.

もちろん、私のアプローチは最善の方法ではないかもしれませんが、テストしたところ、私のニーズに合っています。将来の検索者のために、私がしたことは次のとおりです。

    <?php
    //This will connect to the database in order to begin this page
    mysql_connect("localhost", "root", "time2start") or die (mysql_error());
    //Now we will select the database we need to talk to
    mysql_select_db("joomla_dev_15") or die (mysql_error());
    $query = "SELECT * FROM enterprise_storage";
    $result = mysql_query($query) or die (mysql_error());
    echo "<table border='1'>";
    echo "$row";
    echo "<tr> <th>Product</th> <th>Wayne Beeg</th> <th>Paul Hamke</th> <th>Steve Jaczyk</th> <th>David Jontow</th> <th>Ed MacDonald</th> <th>Michael Munozcano</th> <th>Ron Shaffer</th> <th><a href='http://localhost/~user/joomla15/custom/updateform.php'>Luke Soares</a></th> <th>Josh Wenger</th> </tr>";
    // keeps getting the next row until there are no more to get
    while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr><td>"; 
echo $row['model'];
echo "</td>";
if ($row['beeg'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['beeg'] ;
}else{
    echo '<td>' .$row['beeg'];
}
echo "</td>"; 
if ($row['hamke'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['hamke'] ;
}else{
    echo '<td>' .$row['hamke'];
}
echo "</td>"; 
if ($row['jaczyk'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['jaczyk'] ;
}else{
    echo '<td>' .$row['jaczyk'];
}
echo "</td>"; 
if ($row['jontow'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['jontow'] ;
}else{
    echo '<td>' .$row['jontow'];
}
echo "</td>"; 
if ($row['macdonald'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['macdonald'] ;
}else{
    echo '<td>' .$row['macdonald'];
}
echo "</td>"; 
if ($row['munozcano'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['munozcano'] ;
}else{
    echo '<td>' .$row['munozcano'];
}
echo "</td>"; 
if ($row['shaffer'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['shaffer'] ;
}else{
    echo '<td>' .$row['shaffer'];
}
echo "</td>"; 
if ($row['soares'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['soares'] ;
}else{
    echo '<td>' .$row['soares'];
}
echo "</td>"; 
if ($row['wenger'] == '0'){
    echo '<td bgcolor="#FF0000">' . $row['wenger'] ;
}else{
    echo '<td>' .$row['wenger'];
}
echo "</td></tr>"; 

} エコー "";

?>

于 2012-04-11T23:29:47.617 に答える