So wie ich das jetzt verstanden habe möchtest du eine Nachricht bzw ein News Bericht nur an bestimmte User hinterlegen.
Mein OOB sieht folgendermassen aus.
Du erstellst eine Tabelle Biespiel
Tabelle:nachrichten
Spalte: titel [VARCHAR] 50
Spalte: text [MEDIUMTEXT]
readonly: [MEDIUMTEXT]
Zum auslesen ist es nun abhängig in welcher Variable der user Authentifiziert ist.
Trage ein in Mysql
titel: Test
Nachricht : Dies ist ein Test
readonly: dirk#hans#peter
Beginn des Codes nur die user die in der DB stehen dürfen lesen:
(Ich gehe im Script davon aus, dass der User in $_SESSION[user_name] Authentifiziert ist)
PHP:
<?
$dbverbindung = mysql_connect("XXXX","XXXXX","XXXXX");mysql_select_db("DB");
$result=mysql_query("SELECT * FROM nachrichten ");
{
for($i=0; $i<10000000 && ($row=mysql_fetch_array($result)); $i++);
{
$derdarflesen=explode('#',$row[readonly]);
for($a=0; $a<count($derdarflesen); $a++)
{
if ($derdarflesen[$a] == $_SESSION[user_name]) {
echo "<b>$row[titel]</b>\n$row[text]\n\n"; }
else { }
}
}
}
}
}
}
mysql_close ($dbverbindung)
?>
PHP:
Und jetzt zur eingabe von Nachrichten
1. Lese alle User ein:
2. Bilde eine FOR schleife genauso wie oben $i++
$result=mysql_query("SELECT * FROM user ");
{
for($i=0; $i<10000000 && ($row=mysql_fetch_array($result)); $i++);
{
echo "<CECKBOX value''$row[user_name]"; // Füg hier die Cechkbox mit Mehrfach auswahl ein
}
echo ""; //Hier dein Eingabefeld und Absende Button.
}
3. Bilde einfach ceckbuttons mit dem Wert Value = Username
4. Bilde ein Eingabefeld
5. Ein Absende Button an eine PHP Datei die Das ganze Verarbeiten soll.
Melde dich dann einfach falls du Probleme hast - ich helfe dir dan schon.
In der 2ten PHP wonach du deine Daten absendest, trägst du diese in
die mysql ein:
Wichtig einen Eintrag in Mysql kannst machst du dann so:
PHP:
mysql_query("INSERT INTO nachrichten (titel,text,readonly) VALUES ('$titel','$text,$readonly')");
Was aber deine Probleme lösen sollte:
Eine For schleife:
PHP:
for ($i =0; $i<100; $i++) // Bedeutet $i ist null; solange bis $i 100 ist; Schrit $i+1
{
}
Lesen aus der DB einen Eintrag:
PHP:
$result=mysql_query("SELECT * FROM user "); // Woher dir Bezugsdaten
{
while($row=mysql_fetch_array($result)) // abwarten bis daten im Array sind
{
Lesen Mehrerer Daten mit einer FOR Schleife
PHP:
$result=mysql_query("SELECT * FROM user ");
{
for($i=0; $i<10000000 && ($row=mysql_fetch_array($result)); $i++);
{
echo "<CECKBOX value''$row[user_name]"; // Füg hier die Cechkbox mit Mehrfach auswahl ein
}
// anderst wie oben wird hier in der FOR Schleife immer wieder Zeile für Zeile ein
neuer Array mit jeweils der neuen Zeile erstellt.
Bestimmtes auslesen mit WHERE
WHERE spalte = wert
BSP WHERE titel='hallo'
PHP:
$result=mysql_query("SELECT * FROM nachrichten WHERE titel = 'test' ");
{
for($i=0; $i<10000000 && ($row=mysql_fetch_array($result)); $i++);
{
echo "";
}
// Hier werden nur die Zeilen ausgegeben in deren die spalte titel den eintrag test beinhaltet
Eintrag in die DB
INSERT INTO () VALES()
INSERT INTO nachrichten (titel) VALUES ('$h')
oder Mehrere Einträge
INSERT INTO nachrichten (titel,text) VALUES ('$h','$a')
PHP:
mysql_query("INSERT INTO nachrichten (titel,text) VALUES ('$h','$a')");
Ersetzen eines Spalteninhaltes
UPDATE SET
UPDATE nachrichten SET titel = hallo
UPDATE nachrichten SET titel = hallo WHERE titel = hallihallo
= Ersetzr in nachrichten schreib in Spalte titel hallo dort wo in Spalte titel hallihallo steht
(Mit BSp LIMIT 1 ikannst du bewirken das nur ein Eintrag erstzt wird.)
PHP:
mysql_query("UPDATE nachrichten SET titel = 'hallo' WHERE titel = 'hallihallo' LIMIT1");
Löschen einer oder mehrerer bestimmten Zeile/n:
DELETE FROM
DELETE FROM nachrichten wehere titel = 'hallo'
lösche Zeile in der Spalte titel = hallo ist
PHP:
mysql_query("DELETE * FROM nachrichten WHERE titel='hallo'");
Zählen aus der DB
SELECT COUNT(*) FROM
SELECT COUNT(*) FROM nachrichten WHERE titel = 'hallo'
Zähle die Zeilen in den die Spalte titel den Wert hallo trägt
PHP:
// im array[0] steht die Anzahl in diesem fall $row[0]
$result=mysql_query("SELECT COUNT(*) FROM nachrichten WHERE titel = 'hallo' ");
{
while($row=mysql_fetch_array($result)) // abwarten bis daten im Array sind
{
echo $row[0];