[ vidonk @ 24.02.2010. 23:12 ] @
Ovako imam problem sa while petljom, otprilike to nesto izgleda ovako

Code:

if(isset($_POST['action'])) /// Ovdje nemogu da dobijem sve redom karaktere kako su dolje izlistani :(
{
$l = 1;
while ($l <= $daysIM)
{
$dani = intval($_POST['dani']);
$ime = intval($_POST['ime']);
$sati = intval($_POST['sati']);
$smjena = intval($_POST['smjena']);
$objekat = intval($_POST['objekat']);

$q = mysql_query("INSERT INTO `".$current_month."` 
    VALUES(0, '".$dani."', '".$ime."', '".$sati."', '".$smjna."', '".$objekat."' );");
}
}





echo "<div class=\"form\">\n";
echo "<form action=\"users.php?\" method=\"post\">\n";
$b = 1;
while ($b <= $daysIM){        // $daysIM br dana u mjesecu
$sati = $_GET['sati'];
$objekat = $_POST['objekat'];

if ($_GET['dan'] == 3od3)
    {
    if ($b == 3 or $b == 7 or $b == 11 or $b == 15 or $b == 19 or $b == 23 or $b == 27 or $b == 31 )
    {
    $sati = "";
    }else{
    $sati = $_GET['sati'];
    }
    }


echo "$b | $sati ";
    $b++;

echo "<input type=\"hidden\" name=\"action\" value=\"save\"/>";
echo "<input type=\"submit\" value=\"Sacuvaj\"/></form></div>";


Znaci ispisem sa while petljom br dana u mjesecu gdje svaki dan ima sate smjenu i td ali nemogu takvu struktura da sa Submit posaljem na upis u bazu nadam se da sam bio jasan



[Ovu poruku je menjao Goran Rakić dana 26.02.2010. u 02:18 GMT+1]
[ Goran Rakić @ 25.02.2010. 23:07 ] @
Meni ovaj tvoj kod nema nikakvog smisla. Uopšte ne razumem šta pokušavaš da uradiš.
[ vidonk @ 25.02.2010. 23:33 ] @
Code:

if(isset($_POST['action'])) {
  var_dump($_POST);
}
else {
  echo "<div class=\"form\">\n";
  echo "<form action=\"users.php?\" method=\"post\">\n";
  $b = 1;
  // $daysIM - je broj dana u mjesecu
  while ($b <= $daysIM){
     echo "<input type=\"text\" name=\"b\" value=\"$b\"/><br/>";
     $b++;
  }
  echo "<input type=\"hidden\" name=\"action\" value=\"save\"/>";
  echo "<input type=\"submit\" value=\"Sacuvaj\"/></form></div>";
}


Znaci sa while petljom izlistam dane u mjesecu gdje svaki dan ima sate smjene itd. Recimo za ovaj mjesec imam 28 dana oni idu jedan ispod drugog a uz svaki dan ide <input type=\"text\"> gdje se unosi neka vrijednost.



Na klik submit ja bih sve te vrijednosti trebao da sacuvam, u mom slucaju svih 28 dana i to sto dodje uz njih... Kada kliknem na Sacuvaj rezultat mi je 10 a meni treba od 1 do 10 jedan ispod drugod, u tome je sav problem. Nadam se da sam bio jasniji

[Ovu poruku je menjao Goran Rakić dana 26.02.2010. u 02:04 GMT+1]
[ Goran Rakić @ 26.02.2010. 01:14 ] @
Ovako se postavlja pitanje. Promenio sam naslov teme, formatirao tvoj kod i izbacio nepotrebno ponavljanje. echo linija u while petlji je bitna, bez nje niko ne vidi da ti imaš bilo kakva polja u HTML izlazu. Snimak ekrana pomaže, ali uz ispravan kod nije neophodan. Moraš uložiti vreme u formulisanje pitanja ako želiš odgovor. Na sjajnom sajtu stackoverflow.com bi veoma brzo dobio negativnu ocenu i izgubio prava da postavljaš dalja pitanja.

Kao što verovatno znaš, kada pošalješ formu u skripti koja radi obradu dobijaš unos u superglobalnom nizu $_POST oblika ime_polja=>vrednost. Ti na stranici imaš 28 polja koja se zovu "b", svako naredno prepisuje prethodno i kao rezultat dobijaš samo jedno polje.

Rešenje je da preimenuješ polje/polja iz "b" u "b[]". PHP će pri prikupljanju polja i formiranju $_POST niza napraviti podniz $_POST['b'] u kome je vrednost prvog polja $_POST['b'][0] i tako redom. Ime polja u HTML-u možeš da zadaješ i sa određenim indeksom "b[pondeljak]", "b[utorak]", ali za ovo što tebi treba automatsko numerisanje je sasvim dovoljno.

Dakle, promeni echo liniju u while petlji u:
Code:

     echo "<input type=\"text\" name=\"b[]\" value=\"$b\"/><br/>";
[ vidonk @ 26.02.2010. 18:55 ] @
Aha ok hvala na iscrpnom odgovoru sad mi je jasnije ali imam sad drugi problem sa ovom array trazio sam danas po php netu odg. Al bezuspjesno kako da je razlozim i stavim u $promjenjljivu nasao sam kako se kreira ali ne i kako se razlaze na onoliko $prom. Koliko ima arreja, u mom slucaju prva vrijednos [1] da bude $b, iz sledece array[]prva vijednos da bude $c i tako redom u nizu za svaki dan u sustini da dobijem vrijednosti kakve sam i poslao da bih mogao to da sacuvam u bazu ako moze i mala pomoc i oko ovog ili koju funkciju da trazim Hvala veliko jos jednom
[ Goran Rakić @ 26.02.2010. 20:13 ] @
A kako ti izgleda struktura te tabele u bazi?

To što ti želiš je moguće, ali ne deluje da baš tako treba. Zavisi šta na kraju hoćeš da uradiš, sigurno ima i boljih rešenja.
[ vidonk @ 26.02.2010. 23:44 ] @
Moram priznati da sam iznenadjen .... pozitivno ovako hm
Znaci treba mi da podatke (kao na predhodnoj slici) sacuvam u bazu komplet kako su i upisani a struktura tebele je
id - auto incriment
dan - int
ime - text
sati - int
smjena - text
objekat - text

Upisivao bih ih u jednom nizu znaci jedan pored drugog za cijeli mjesec svih 30 ili 31 dan
Code:

if(isset($_POST['action']))
{


echo "<pre>";
var_dump($_POST);
echo "</pre>";

// a  $ime , $sati, $smjena $objekat su text fileld uz $b koje dobijam sa $_POST
// [0]=> string(1) "1" je $b prvi dan u mjesecu 

$q = mysql_query("INSERT INTO `".$current_month."` VALUES(0, '".$b."', '".$ime."', '".$sati."', '".$smjna."', '".$objekat."' );"); // $current_month sadasnji mjesec
}

Svaki dan u mjesecu ima neke podatke uz sebe i samo bih to htio da sacuvam, strukturu bas kao na slici da to moze opet da se prikaze iz baze bas kao sto je i unijeto eo i print-screen


Sve mi se cini da sam nejasnu ovo objasnio pa evo cijeli kod ne znam kako drugacije da budem siguran da znas sta hocu

Code:

if(isset($_POST['action']))
{

echo "<pre>";
var_export($_POST);
echo "</pre>";
echo "$a";

$q = mysql_query("INSERT INTO `".$current_month."` VALUES(0, '".$dani."', '".$ime."', '".$sati."', '".$smjna."', '".$objekat."' );");
}

echo " Mjesec = $current_month";
echo "<div class=\"form\">\n";
echo "<form action=\"users.php?\" method=\"post\">\n";
$b = 1;
while ($b <= $daysIM){
$sati = $_POST['sati'];
$objekat = $_POST['objekat'];

            
            
    echo "<tr class='row'>
            <td>$b</td>
<input type=\"hidden\" name=\"dani[]\" value=\"$b\"/>
            <td>
            <input type=\"text\" name=\"sati[]\" size=\"4\" maxlength=\"2\" value=\"$sati\"/></td>    
            <td><input type=\"text\" name=\"smjena[]\" size=\"8\" maxlength=\"8\" value=\"$smjena\"/></td>
          <td><input type=\"text\" name=\"objekat[]\" size=\"20\" maxlength=\"200\" value=\"$objekat\"/></td></tr>";
    $b++;
}

echo "</table>";
echo "<input type=\"hidden\" name=\"action\" value=\"save\"/>";
echo "<input type=\"submit\" value=\"Sacuvaj\"/></form></div><br/>\n";


[Ovu poruku je menjao vidonk dana 27.02.2010. u 01:52 GMT+1]