Archivlink: javarea.de Forum > PHP, MySQL & CGI > insert
Vollständigen Link anzeigen: javarea.de Forum > PHP, MySQL & CGI > insert

Pages: [1]

geschrieben von rich am 06.02.2010 - 14:06
hallo ihr lieben....
ich weiss mal wieder nicht so recht weiter

und zwar hab ich bei einem insert noch ein zweiten insert...
PHP-Quelltext
1: 
2: 
3: 

<?
$sql
="INSERT INTO ".$prefix."nachrichten (nachrichten_von, nachrichten_an, nachrichten_subject, nachrichten_text, Rang, Foto, nachrichten_zeit)VALUES('System', 'rich' ,'neues Game', 'es wurde ein neues Spiel: <font color=red>$spielname</font> eingetragen, <br /> in der Kategorie: <font color=red>$kategorie</font><br /><hr />schau es dir gleich mal an, vielleicht ist es ja was für dich...', 'System', 'images/system.png', '".time()."')";
?>


funktioniert super...
hier wird dem User eine nachricht geschickt, dass sich ein neues Game in der DB befindet....

der user dem dies jetzt geschickt wird bin ich (rich)
allerdings möchte ich , dass wo 'rich' steht nun alle User aufgelistet werden...
weiss nur nicht, wie ich das realisieren soll, dass diese nachricht an alle nutzer geht.

vielleicht alle nickname's auslesen und dann einfügen?
oder gibt es speziell wieder eine anweisung dafür...?
mfg rich

geschrieben von Micha am 06.02.2010 - 17:53
Hi,

also Deine Idee, alle User erst auszulesen und dann in einer Schleife abzuarbeiten, ist mir auch als erstes gekommen. Obs einfacher geht, weiß ich nicht aber das wird in jedem Fall gehen.

Gruß Micha

geschrieben von rich am 08.02.2010 - 13:49
ja das mit dem auslesen ist ja nicht das ding, eher das insert...

PHP-Quelltext
1: 
2: 
3: 

<?
)VALUES('System''rich' ,'neues Game', ...
?>



hab das mal wie folgt probiert...

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 

<?
)VALUES('System''$Nickname' ,'neues Game'
)
VALUES('System''$Nickname .,.' ,'neues Game'
)
VALUES('System''$Nickname'"."'' ,'neues Game',
?>


allerdings hat das nicht zum gewünschenten ergebniss geführt...
verständlich was ich meine ?

im ersten beitrag ist es einfach nur der nick (die mail wird nur an den user versendet)
soweit funktioniert das ja ^^
es geht nur nicht, an alle user.
vielen dank im vorraus für die mühe.



geschrieben von Danny am 08.02.2010 - 14:18
Hi rich,

du hast beim Auslesen ja eine Schleife in der du alle Benutzernamen abfragen kannst, also z.B. $Nickname

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 

<?
while(...) {
   
mysql_query("INSERT ... VALUES ('System', '".$Nickname."', ... ");
}
?>



Gruß Danny

geschrieben von rich am 08.02.2010 - 14:57
hallo Danny....

funktioniert das denn auch wenn ich vorher noch einen insert hab!?

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 

<?
...
...
...
$spielvideo mysql_real_escape_string($_POST['spielvideo']);

// Insert data into mysql
$sql="INSERT INTO ".$prefix."spiele(spielname, entwickler, kategorie, rel1, rel2, rel3, genre, sprache, usk, system, prozessor, prozessorbez, prozessorcore, prozessorbez_amd, ram, grafikkarte, grafikram, speicherplatz, speicherbezeichnung, spielbeschreibung, gamelogo, gal1, gal2, gal3, gal4, gal5, gal6, spielvideo)VALUES('$spielname', '$entwickler', '$kategorie', '$rel1', '$rel2', '$rel3', '$genre', '$sprache', '$usk', '$system', '$prozessor', '$prozessorbez', '$prozessorcore', '$prozessorbez_amd', '$ram', '$grafikkarte', '$grafikram', '$speicherplatz', '$speicherbezeichnung', '$spielbeschreibung', '$gamelogo', '$gal1', '$gal2', '$gal3', '$gal4', '$gal5', '$gal6', '$spielvideo')";
$result=mysql_query($sql);

$sql="INSERT INTO ".$prefix."nachrichten (nachrichten_von, nachrichten_an, nachrichten_subject, nachrichten_text, Rang, Foto, nachrichten_zeit)VALUES('System', 'rich' ,'neues Game', 'es wurde ein neues Spiel: <font color=red>$spielname</font> eingetragen, <br /> in der Kategorie: <font color=red>$kategorie</font><br /><hr />schau es dir gleich mal an, vielleicht ist es ja was für dich...', 'System', 'images/system.png', '".time()."')";
$result=mysql_query($sql);
?>



hab zum schluß ja noch den Timestamp
PHP-Quelltext
1: 
2: 
3: 

<?
'".time()."')";
?>



das beisst sich doch mit dem ende?

PHP-Quelltext
1: 
2: 
3: 

<?
mysql_query
("INSERT ... VALUES ('System', '".$Nickname."', ... ");
?>



oder bin ich jetzt ganz verblödet ?
gruß

geschrieben von Danny am 08.02.2010 - 15:07
Hallo rich,

so wie ich es verstanden habe möchtest du wenn ein neues Spiel erstellt wir eine Nachricht an alle Spieler schicken.

Du trägst also das Spiel ein

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 

<?
$spielvideo 
mysql_real_escape_string($_POST['spielvideo']);

// Insert data into mysql
$sql="INSERT INTO ".$prefix."spiele(spielname, entwickler, kategorie, rel1, rel2, rel3, genre, sprache, usk, system, prozessor, prozessorbez, prozessorcore, prozessorbez_amd, ram, grafikkarte, grafikram, speicherplatz, speicherbezeichnung, spielbeschreibung, gamelogo, gal1, gal2, gal3, gal4, gal5, gal6, spielvideo)VALUES('$spielname', '$entwickler', '$kategorie', '$rel1', '$rel2', '$rel3', '$genre', '$sprache', '$usk', '$system', '$prozessor', '$prozessorbez', '$prozessorcore', '$prozessorbez_amd', '$ram', '$grafikkarte', '$grafikram', '$speicherplatz', '$speicherbezeichnung', '$spielbeschreibung', '$gamelogo', '$gal1', '$gal2', '$gal3', '$gal4', '$gal5', '$gal6', '$spielvideo')";
$result=mysql_query($sql);
?>



Jetzt liest du alle Spieler aus an die eine Nachricht geschickt werden soll und speicherst für jeden dieser Spieler einen Eintrag in "nachrichten"

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 

<?
$query_user 
mysql_query("SELECT benutzername FROM tabelle_user");
while(
$fetch_user mysql_fetch_array($query_user) {

$Nickname $fetch_user['benutzername']; // in Nickname steht in jedem Schleifendurchlauf der jeweilige Nutername

$sql="INSERT INTO ".$prefix."nachrichten (nachrichten_von, nachrichten_an, nachrichten_subject, nachrichten_text, Rang, Foto, nachrichten_zeit)VALUES('System', '".$Nickname."' ,'neues Game', 'es wurde ein neues Spiel: <font color=red>
$spielname</font> eingetragen, <br /> in der Kategorie: <font color=red>$kategorie</font><br /><hr />schau es dir gleich mal an, vielleicht ist es ja was für dich...', 'System', 'images/system.png', '".time()."')";
$result=mysql_query($sql);

}
?>



Das mit dem time() sollte so auch klappen.

Gruß Danny

geschrieben von rich am 08.02.2010 - 16:08
hey Danny...
ganz genau, richtig verstanden =)

in der Tabelle games_benutzerdaten wird jetzt die Spalte Nickname ausgewählt.
dies habe ich auch 4zeilen weiter unten angepasst ^^

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 

<?
$query_user 
mysql_query("SELECT Nickname FROM games_benutzerdaten");
while(
$fetch_user mysql_fetch_array($query_user) {

$Nickname $fetch_user['Nickname']; // in Nickname steht in jedem Schleifendurchlauf der jeweilige Nutername

$sql="INSERT INTO ".$prefix."nachrichten (nachrichten_von, nachrichten_an, nachrichten_subject, nachrichten_text, Rang, Foto, nachrichten_zeit)VALUES('System', '".$Nickname."' ,'neues Game', 'es wurde ein neues Spiel: <font color=red>$spielname</font> eingetragen, <br /> in der Kategorie: <font color=red>$kategorie</font><br /><hr />schau es dir gleich mal an, vielleicht ist es ja was für dich...', 'System', 'images/system.png', '".time()."')";
$result=mysql_query($sql);

}
?>



nun bekomme ich aber folgenden fehler...
Parse error: syntax error, unexpected '{' in C:\xampp\htdocs\admin\addgame_ac.php on line 46

das ist diese zeile:
Zitat
 while($fetch_user = mysql_fetch_array($query_user) {

geschrieben von Danny am 08.02.2010 - 16:43
Mein Fehler,
da fehlt natürlich noch eine schließende Klammer

HTML-Quelltext
1: 
while($fetch_user = mysql_fetch_array($query_user)) {



geschrieben von rich am 08.02.2010 - 17:35
ja das hätte ich aber auch selbst sehen können



danke hat wie immer funktioniert ^^
freue mich sehr und wieder was gelernt =)

ich möchte noch anmerken, dass dies hier bis jetzt das beste Forum ist was ich gefunden habe
sehr nette leute, schnelle und vorallem verständlich gute hilfe.

besonderen dank geht an Danny =)
hast mir bisher viel geholfen dank dir konnte ich viele sachen auch schon alleine machen.
hoffe, ich kann noch das eine oder andere lernen.

danke ^^


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.