Autor | Zpráva | ||
---|---|---|---|
Andreja Profil * |
#1 · Zasláno: 23. 1. 2008, 21:07:14
<?php if(isset($_POST['text'])){ $od=$_SESSION['user_id']; $predmet=$_POST['predmet']; $text=nl2br($_POST['text']); if($text==""){ }else{ $select=mysql_query("SELECT count(user_id) FROM `users`"); $vypis2=mysql_fetch_row($select); $users=max($vypis2); $vypis3=mysql_fetch_array($select); $pre=$vypis1['user_id'] for ($VlozData = 1; $VlozData <= $users;) { $VlozData=mysql_query("INSERT INTO posta (od,pre,predmet,text,datum) VALUES ('$od', '$pre', '$predmet', '$text', NOW())"); } } } ?> Ahojte prave robim script pre moj portal a v tom ze chcem urobit to aby sa dalo poslat postu kazdemu ale takto to nejde neviete preco ? diky za pomoc |
||
Akacko Profil |
#2 · Zasláno: 23. 1. 2008, 21:10:37
Andreja
a píše to nějaký error nebo to něco neděla? btw: co má dělat toto? for ($VlozData = 1; $VlozData <= $users;) |
||
Andreja Profil * |
#3 · Zasláno: 23. 1. 2008, 21:19:25
ma to zistit nejprv max userov v tabulke a potom tolkokrat urobit insert napriklad 3 useri
takzy raz ulozi pre ...usera 1,2,3 takze potrebuje trikrat insert preto je tam to foreach lenze teraz ulozi do pre 0 a urobi pres 1000 post ... ja chcem iba try ak mam troch userov ulozenych v db |
||
Akacko Profil |
#4 · Zasláno: 23. 1. 2008, 21:31:18 · Upravil/a: Akacko
Andreja
No ale musíš ty data nějak zvyšovat (inkrementovat) for ($VlozData = 1; $VlozData <= $users;$VlozData++) jinak hodnota proměnné $VlozData zůstane pořád 1. Cyklus nikdy neskončí. edit:foreach tam nepoužíváš, jak píšeš. POZOR for a foreach je úplně něco jiného i když se jedná o cykly |
||
Andreja Profil * |
#5 · Zasláno: 23. 1. 2008, 21:38:00
dal som tam toto
for($pre = 1; $pre <= $users; $pre++){ lebo potrebujem zvysovat pre cislo ... ale nejde je tam niaka syntax error ? |
||
Akacko Profil |
#6 · Zasláno: 23. 1. 2008, 21:46:56
Andreja
v tom foru nevidím error. Jinak v proměnné $pre máš asi ID uživatele, které zvyšuješ postupně (1,2,3,4,5....n) a co když někdy smažeš uživatele 3? |
||
Andreja Profil * |
#7 · Zasláno: 23. 1. 2008, 21:47:36
Akacko
a potom se to jak da udelat ... ? |
||
BetaCam Profil |
#8 · Zasláno: 24. 1. 2008, 14:48:23
Andreja
Vybrat id existujících uživatelů a pak to vkládat podle nich. |
||
Andreja Profil * |
#9 · Zasláno: 24. 1. 2008, 17:53:52
BetaCam
a jak je mam vybrat kdys je vyberu pomoci while pak to ve for nejde nevim jak prosim pomoc ... |
||
BetaCam Profil |
#10 · Zasláno: 24. 1. 2008, 18:22:02
Andreja
No mě hlavně prijde ten tvuj kód strašne chaotickej. Dej mi 10 minut, abych se v tom trochu z orientoval. :) |
||
BetaCam Profil |
#11 · Zasláno: 24. 1. 2008, 18:31:24 · Upravil/a: BetaCam
Tak asi nějak takhle :
<?php if(isset($_POST['text'])){ $od=$_SESSION['user_id']; $predmet=$_POST['predmet']; $text=nl2br($_POST['text']); if(!empty($text)){ $resource = mysql_query("SELECT user_id FROM `users`"); while($user = mysql_fetch_object($resource)){ mysql_query("INSERT INTO posta (od,pre,predmet,text,datum) VALUES ('$od', '$user->user_id', '$predmet', '$text', NOW())"); } // while } // if } // if ?> Radši bych se zaměřil tímhle směrem než používat tu šílenou konstrukci s For |
||
Andreja Profil * |
#12 · Zasláno: 24. 1. 2008, 21:18:51
BetaCam
diky uz viem ako budem pisat svoje kody :D |
||
BetaCam Profil |
#13 · Zasláno: 24. 1. 2008, 21:31:21
Andreja
Jo ješte jedna věc kterou sem si ted uvědomil v tom query na získání user_id by mela bejt jeste podmínka, aby to nevybíralo user_id odesilatele. Pokud tam ta podmínka totiž nebude tak bude tu poštu dostávat i samotný odesilatel což předpokládám, že je nežádoucí. |
||
Časová prodleva: 16 let
|
0