HTML tabeller mm

PHP

10 svar · 171 visningar · startad av HDJHSKGDKJHSD

Medlem sedan sep. 2001147 inlägg
Trådstart#1

Hur gör man för att visa alla resultat från en MySQL query?
och visar resultatet i en html-table, samt att man har varannan rad i en ny färg..så det att blir lite mindre "grötigt" att läsa.

Medlem sedan juli 2000449 inlägg
#2

En fråga bara. Vet du hur man presenterar resultatat alls?

Om du vet det så är det i princip bara att göra såhär:

<table>
<tr>
<td>ID</td><td>Namn</td><td>Telefonnummer</td>
</tr>
<?
//Hämta resultatet från databasen.
<tr>
<td><?=$id?></td><td><?=$namn?></td><td><?=$telnr?></td>
?>
</table>

Om du inte vet hur du får ut resultatet får du nog allt göra en sökning här på forumet ;-)

Medlem sedan sep. 2001147 inlägg
#3

hmm, det där fungerar ju inte alls :(

dessutom blir det inte en ny färg varannan rad. Alltså, första röd, andra blå, tredje röd osv.

Medlem sedan juli 2000449 inlägg
#4

Hur ser din kod ut då?

Medlem sedan sep. 2001147 inlägg
#5

well, nu har jag löst det iaf..tror jag.
hursomhelst, hur gör man för att returna alla kolumner i en databas när man har DISTINCT?

SELECT DISTINCT w_namn FROM mytable

detta returnerar bara w_namn en gång, detta är bra. men jag vill ha alla fält..fast fortfarande ha w_namn unik...

Medlem sedan sep. 200141 inlägg
#6

Tjena!

Här har du en liten kod som skriver ut värden från en mySQL databas och sen skriver ut den på browser. Varje ny rad blir nu olika färger.

<?
function initialize() {
$conn = mysql_connect("db namn","db username","db pass");
if( $conn ) {
$res = mysql_select_db("db",$conn);
} else {
$GLOBALS["message"] = mysql_error();
}

function mysqlRows( $query, $conn ) {
$res = mysql_query( $query, $conn );
return $res;
}

$conn = initialize();
$res = mysqlRows( "SELECT * FROM tabell", $conn );
if( $res > 0) {
$content = mysql_numrows( $res );
echo "<table border=\"0\" width=\"420\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr>\n";
$bgcolor = "#9C9C9C";
for( $i = 0; $i < $content; $i++ ) {
$data = mysql_fetch_row( $res );
echo "<tr>\n";
$groupnums["{$data[0]}"] = $i;
$num = $i + 1;
echo "<td align=\"center\" bgcolor=\"$bgcolor\" width=\"105\"><font face=\"verdana\" size=\"1\">$värden</font></td>\n";
echo "</tr>\n";
$bgcolor = $bgcolor == "#9C9C9C" ? "#CCCCCC" : "#9C9C9C";
}
echo "</table><BR><BR>\n";
}
if( $content == 0 ) {
echo "NO CONTENT ";
}
?>

Om du har problem med nått tveka inte att maila mig på bolibompa_trash@hotmail.com

Så kommer jag att försöka hjälpa dig mer.

Mvh

Peter Håkansson (Papa Deoo)

Rättelse:

Detta scriptet skriver bara ut en tabellrad. Vill du ha olika kolumner med olika värden i så får du skapa fler kolumner ;-)

Medlem sedan sep. 2001147 inlägg
#7

ok, tack!

nu så visas ju alla records, vilket är bra! men inte riktigt bra.

ibland finns det dublettar av mina records(med flit), och när man sen listar dem via din kod så kommer alla med även dubletter, fast jag vill bara ha med samma record en gång....

Medlem sedan sep. 200141 inlägg
#8

Hejsan,

För att få bort dubbletter så använd dig av GROUP BY.

Så här ser din query ut nu:
$res = mysqlRows( "SELECT * FROM tabell", $conn );

Men den skall se ut så här

$res = mysqlRows( "SELECT * FROM tabell WHERE värde = $värde GROUP BY värde", $conn );

Du får ju själv välja vilka värden du skall ha i WHERE satsen.

Mvh

Peter Håkansson

Medlem sedan sep. 200141 inlägg
#9

Kan du skicka ett exempel på din kod till bolibompa_trash@hotmail.com så kan jag fixa till det åt dig, glöm inte att ha med alla värden som du skall använda dig av.

Mvh

Peter Håkansson

Medlem sedan sep. 200141 inlägg
#10

Kan du skicka ett exempel på din kod till bolibompa_trash@hotmail.com så kan jag fixa till det åt dig, glöm inte att ha med alla värden som du skall använda dig av.

Mvh

Peter Håkansson

Medlem sedan sep. 200141 inlägg
#11

Hejsa igen ;)

Det verkar som om du skall skriva ut ID, Namn och Telenummer.

Gjorde om queryn lite till dig, så den skall nog funka.

Här är resultatet:

<?
function initialize() {
$conn = mysql_connect("db namn","db username","db pass");
if( $conn ) {
$res = mysql_select_db("db",$conn);
} else {
$GLOBALS["message"] = mysql_error();
}

function mysqlRows( $query, $conn ) {
$res = mysql_query( $query, $conn );
return $res;
}

$conn = initialize();
$res = mysqlRows( "SELECT id,namn,telenr FROM tabell GROUP BY id,namn,telenr ORDER BY namn,telenr", $conn );
if( $res > 0) {
$content = mysql_numrows( $res );
echo "<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr>\n";
echo "<td><font face=\"Verdana, Arial\" SIZE=\"1\">ID</FONT></td><font face=\"Verdana, Arial\" SIZE=\"1\">Namn</FONT></td><td><font face=\"Verdana, Arial\" SIZE=\"1\">Telefonnummer</FONT></td>\n";
echo "</tr>\n";
echo "<tr>\n";
$bgcolor = "#9C9C9C";
for( $i = 0; $i < $content; $i++ ) {
$data = mysql_fetch_row( $res );
echo "<tr>\n";
$groupnums["{$data[0]}"] = $i;
$num = $i + 1;
echo "<td align=\"center\" bgcolor=\"$bgcolor\" width=\"105\"><font face=\"verdana\" size=\"1\">$id</font></td>\n";
echo "<td align=\"center\" bgcolor=\"$bgcolor\" width=\"105\"><font face=\"verdana\" size=\"1\">$namn</font></td>\n";
echo "<td align=\"center\" bgcolor=\"$bgcolor\" width=\"105\"><font face=\"verdana\" size=\"1\">$telenr</font></td>\n";
echo "</tr>\n";
$bgcolor = $bgcolor == "#9C9C9C" ? "#CCCCCC" : "#9C9C9C";
}
echo "</table><BR><BR>\n";
}
if( $content == 0 ) {
echo "NO CONTENT ";
}
?>

Mvh

Peter Håkansson

260 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)