php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 23.05.2009, 06:39  
Neuer Benutzer
 
Registriert seit: 23.05.2009
Beiträge: 1
bmxnskate befindet sich auf einem aufstrebenden Ast
Standard PHP Formatierung von Tabellen

Hallo Leute, ich habe alles was mir unter html bekannt war ausprobiert, entweder zerhaue ich die Syntax oder ich bekomme es nicht hin. Könnt Ihr mir helfen diese php Seite so auszugeben:



Der Code:

PHP-Code:
<?php

header
('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0'false);
header('Pragma: no-cache');

/**
If this file is not in the FlashChat root folder, then change this
path to the location of the inc/common.php file.
*/
require_once('inc/common.php');
error_reporting(E_ALL E_NOTICE);
ChatServer::purgeExpired();

/**
Retrieves the number of users who are chatting in any room.
*/
function numusers($room$chatid 1)
{
    
$stmt = new Statement('SELECT COUNT(*) AS numb FROM '.$GLOBALS['fc_config']['db']['pref'].'connections WHERE userid IS NOT NULL AND roomid = ? AND instance_id = ?'214);
    
$rs $stmt->process($room$chatid);

    
$rec $rs->next();
    return 
$rec $rec['numb'] : 0;
}

/**
Retrieves a list of the users (by login ID) who are in $room.
*/
function usersinroom($room$chatid 1)
{
    
$list = array();

    
$stmt = new Statement('SELECT userid, state, color, lang, roomid FROM '.$GLOBALS['fc_config']['db']['pref'].'connections WHERE userid IS NOT NULL AND roomid = ? AND instance_id = ?'231);
    
$rs $stmt->process($room$chatid);

    while(
$rec $rs->next())
    {
        if(
ChatServer::userInRole($rec['userid'], ROLE_SPY))
        {
            
$list []['login']= '#SPY#';
            continue;
        }

        
$usr ChatServer::getUser($rec['userid']);
        if(
$usr == null && $GLOBALS['fc_config']['enableBots'])
        {
            
$usr $GLOBALS['fc_config']['bot']->getUser($rec['userid']);
        }
        
$list []= array_merge($usr$rec);
    }

    return 
$list;
}

/**
Retrieves a list of all available rooms, as an array.
*/
function roomlist($chatid)
{
    
$list = array();
    
// populate $list with the names of all available rooms
    
$stmt = new Statement('SELECT * FROM '.$GLOBALS['fc_config']['db']['pref'].'rooms WHERE ispublic IS NOT NULL AND instance_id =? order by ispermanent'54);

    
$rs $stmt->process($chatid);

    while(
$rec $rs->next()) $list[] = $rec;
    
//result will be an array of arrays like ('id' => <room id>, 'updated' = <timestamp>, 'created' => <timestamp>, 'name' => <room name>, 'ispublic' => <public flag>, 'ispermanent' => <autoclose flag>)
    
return $list;
}

/**
Get chats
*/
function chats()
{
    
$chats = array();

    
// populate $chats with the names of all available rooms
    
$stmt = new Statement('SELECT * FROM '.$GLOBALS['fc_config']['db']['pref'].'config_instances'3);
    
$rs $stmt->process();

    while(
$rec $rs->next()) $chats[] = $rec;

    return 
$chats;
}
//$chatid   = isset($_GET['cid'])? $_GET['cid'] : 1;
//$chatid = $_SESSION['session_chat'];
$chatid 1;//default chat id =1

$chats    chats();
$rooms    roomlist($chatid);

$roomnumb sizeof($rooms);
$usrnumb 0;
$output = array();
foreach(
$rooms as $key => $room)
{
    
$isSpy false;
    
$users usersinroom($room['id'], $chatid);
    foreach(
$users as $user)
    {
        if(
$user['login'] != '#SPY#')
        {
            
$output[$room['id']]['users'] []= strip_tags($user['login']);
        }
        else
        {
            
$isSpy true;
        }
    }

    
$output[$room['id']]['name'] = strip_tags($room['name']);
    
$output[$room['id']]['numUsers'] = numusers($room['id'], $chatid);
    if(
$isSpy$output[$room['id']]['numUsers']--;

    
$usrnumb += $output[$room['id']]['numUsers'];
}
ksort($output);
//echo '<pre>'; print_r($output); echo '</pre>';
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Who's in the chat?</title>
<meta http-equiv=Content-Type content="text/html; charset=UTF-8">

<style type="text/css">
<!--
.normal {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    charset=UTF-8;
        font-size: 10px;
    font-weight: normal;
}
A {
    font-family: Verdana, Arial, Helvetica, sans-serif;
        charset=UTF-8;
    font-size: 10px;
    color: #0000FF;
}
A:hover {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    charset=UTF-8;
        font-size: 10px;
    color: #FF0000;
}

-->


</style>
<script language='Javascript'>
<!--
    function fwd(url)
    {
        window.location.href = url;
    }
-->
</script>
</head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="refresh" content="60; URL=info.php">
    <body>
        <center>
        <p class="normal">Es ist/sind <?php echo $usrnumb?> User in <?php echo $roomnumb?> Räumen.</p>
        <?php if(count($chats) > 1) { ?>
            <table border="0" cellpadding="1" class="normal">
                <tr>
                    <td><div align="left">Chat:</div></td>
                    <td>
                        <select name="chatid" onchange='javascript:fwd("info.php?session_inst=" + this.value);'>
                        <?php foreach($chats as $k => $v) { ?>
                            <option value="<?php echo $v['id']?><?php if($v['id'] == $chatid) echo 'selected'?>>
                                <?php echo $v['name']?>
                            </option>
                        <?php ?>
                        </select>
                    </td>
                </tr>
                <tr></tr>
            </table>
        <?php ?>
        <?php if($roomnumb) { ?>
            <table border="0" cellpadding="2" class="normal">
                <tr>
                    <th>ID</th>
                    <th>Raum</th>
                    <th>Leute</th>
                    <th>Username</th>
                </tr>
                <?php foreach($output as $roomId => $room) { ?>
                    <tr>
                        <td><?php echo $roomId?></td>
                        <td><?php echo $room['name']?></td>
                        <td><?php echo $room['numUsers']?></td>
                        <td><?php
                        
if(!isset($room['users'])) continue;
                        foreach(
$room['users'] as $user)
                        {
                            echo 
$user '<br>';
                        }

                        
?> </td>
                    </tr>
                <?php ?>
            </table>
        <?php ?>

        <p></p>
        <center>
    </body>
</html>
bmxnskate ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 23.05.2009, 09:28  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Und was hat das mit PHP zu tun?

Im CSS-Code (Achtung: gilt dann natürlich für alle Tabellen und Zellen im Script)
Code:
table { 
  border-collapse:collapse; 
}

td {
  border-bottom:#ccc 1px solid;
}
In der Spalte "Leute"
PHP-Code:
<td style="text-align:center;"><?php echo $room['numUsers']?></td>
Asipak ist offline  
Alt 23.05.2009, 10:43  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Kein inline CSS bitte Das am besten auch noch in die CSS Datei verschieben.
Flor1an ist offline  
Alt 23.05.2009, 12:56  
Erfahrener Benutzer
 
Benutzerbild von PhillKill12
 
Registriert seit: 26.10.2008
Beiträge: 387
PHP-Kenntnisse:
Fortgeschritten
PhillKill12 befindet sich auf einem aufstrebenden Ast
PhillKill12 eine Nachricht über MSN schicken
Standard

Eine weitere Möglichkeit für das anzeigen der waagrechten striche in der Tabelle wäre folgendes:
Code:
<table frame="void" rules="rows">...</table>
__________________
PHP-Code:
if ( $humans >= ) {
   
war ();

PhillKill12 ist offline  
Alt 23.05.2009, 13:19  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Meiner Meinung nach sollte Design und Inhalt soweit es möglich ist getrennt werden. Daher wäre die Möglichkeit die Tabelle mit CSS zu stylen schöner und es lässt sich später recht einfach die CSS anpassen.
Flor1an ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Formulardaten in mehrere Tabellen verteilen malungo Datenbanken 7 06.11.2008 11:59
in einer abfrage ermitteln ob mehrere tabellen existieren? litterauspirna Datenbanken 7 28.10.2008 19:33
[Erledigt] Limit auf Ergebnissumme mehrerer Tabellen Frank Datenbanken 8 02.09.2008 11:33
Tabellen für Vokabeltrainer anlegen... anonym01 PHP Tipps 2008 9 03.03.2008 21:18
PHP Array in MYSQL Tabellen schreiben Matt Datenbanken 1 26.02.2008 19:43
5 tabellen miteinander verknüpfen. miwo Datenbanken 2 22.09.2007 11:17
abfrage über mehrere tabellen mit einer bedingung DarkThunder PHP Tipps 2007 6 15.04.2007 17:13
Volltext-Suche Problem - 2 verschiedene Tabellen Datenbanken 1 18.09.2006 16:32
Temporäre Tabellen und Performance Olsen Datenbanken 2 09.09.2006 17:08
Join-Abfrage über mehrere Tabellen sinai Datenbanken 3 04.02.2006 13:05
einträge aus 2 tabellen sortieren Tschuu Datenbanken 11 20.12.2005 08:21
[Erledigt] abfrage mehrere tabellen PHP Tipps 2005-2 3 31.10.2005 21:57
2 Tabellen auf gleichen Feldinhalt zu prüfen Datenbanken 6 23.02.2005 12:02
[Erledigt] Selectanfrage an eine Datenbank,aber aus mehreren Tabellen Datenbanken 2 26.10.2004 07:23
[Erledigt] fulltext suche priorität von tabellen setzen Datenbanken 1 09.08.2004 15:26

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php formatierung \[list]\, formatierung von tabellen, php formatierung von tabellen, php return $rec?$rec[\'numb\']:0;, formatierung tabellen php

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum