Autor | Zpráva | ||
---|---|---|---|
Beny Profil * |
#1 · Zasláno: 11. 1. 2008, 20:53:41
zdravim, dá se prosimvás nějak vymazat promena která byla naplnená přes fetch_array? Diky
|
||
Kcko Profil |
#2 · Zasláno: 11. 1. 2008, 20:56:27
unset();
|
||
Beny Profil * |
#3 · Zasláno: 11. 1. 2008, 21:03:22
to sem zkousel ale to se zda ze ji nevymaze :(
---------------------------------------------------------------------- ------------------------------------------ if(isset($_GET["filtr"])) $objednavka = adminObj($_GET["filtr"]); else $objednavka = adminObj(); $i=0; foreach ($objednavka as $obj) { if ( isset($_POST['potvrdb']) && isset($_POST['potvrd'][$i]) && $_POST['potvrd'][$i]==$obj['cislo']){ echo "potvzuji"; ++$i; updateObj($obj['cislo'], $obj['termin'], $obj['rok'], $obj['osob'], $obj['pes'], true); } } if(isset($_GET["filtr"])) $ob = adminObj($_GET["filtr"]); else $ob = adminObj(); foreach ($ob as $obj) { echo $obj['potvrzeno']; if ( $obj['pes']==1 ) {$p='<img src="image/yes.png" alt="yes.png, 2 kB" title="yes" border="0" height="13" width="14" />';} else $p='<img src="image/no.png" alt="no.png, 2 kB" title="no" border="0" height="13" width="14" />'; if ( $obj['potvrzeno']==1 ) {$po='checked="checked" disabled="disabled"';} else $po=''; print "<tr align=\"center\">\n<td>".$obj['cislo'].".)</td>\n\t\t\t\t<td align=\"left\">".$obj['jmeno']." ".$obj['prijmeni']."</td><td align=\"right\">".$obj['termin'].".</td>\n\t\t\t\t<td>".$obj['rok']."< /td>\n\t\t\t\t<td>".$obj['osob']."</td>\n\t\t\t\t<td>".$p."</td><td><i nput type=\"checkbox\" name=\"potvrd[]\" value=\"".$obj['cislo']."\" ".$po." /></td>\n\t\t\t\t<td> <a href=\"chobj.php?action=edit&id_obj=".$obj['cislo']."\">Změnit</a> </td>\n\t\t\t\t<td> <a href=\"administration.php?action=delete&id_ob=".$obj['cislo']."\"> Vymazat</a> </td></tr>\n"; } tohle mi prave vypise to co je v databazi ulozeno ale 2x za sebou i kdyz ten vypis je tam jenom jednou... |
||
BetaCam Profil |
#4 · Zasláno: 11. 1. 2008, 21:05:35
Beny
Méně přehlednějš by ten script napsat nešel??? |
||
Beny Profil * |
#5 · Zasláno: 11. 1. 2008, 21:11:12
sorry
---------------------------------------------------------------------- -------------------- if(isset($_GET["filtr"])) $objednavka = adminObj($_GET["filtr"]); else $objednavka = adminObj(); $i=0; foreach ($objednavka as $obj) { if ( isset($_POST['potvrdb']) && isset($_POST['potvrd'][$i]) && $_POST['potvrd'][$i]==$obj['cislo']) { echo "potvzuji"; ++$i; updateObj($obj['cislo'], $obj['termin'], $obj['rok'], $obj['osob'], $obj['pes'], true); } } if(isset($_GET["filtr"])) $ob = adminObj($_GET["filtr"]); else $ob = adminObj(); foreach ($ob as $obj) { print "tady je proste ten vypis co vypise 2x vic nez je v tej db..."; } |
||
Beny Profil * |
#6 · Zasláno: 11. 1. 2008, 21:16:12
Prostě v tom prvnim foreach potřebuju určitý označený položky updatovat a pak to všecho aktualizovaný vypsat.
Místo toho to updatuje data v db a pak to vypise jednou neaktualizovaný a hned pod tim aktualzovaný... |
||
BetaCam Profil |
#7 · Zasláno: 11. 1. 2008, 21:26:11
1. Když zakomentuješ ten foreach s updatem tak to udělá co?? Vypíše to jednou nebo dvakrát?
2. Jak vypadá adminObj()??? 3. V tom scriptu co si zde uved máš výpis pouze jeden takže bych tak typnul, že máš blbě naplněný pole. |
||
Beny Profil * |
#8 · Zasláno: 11. 1. 2008, 21:30:56
1. Vypíše to 2x ale jenom to neupdatuje
--------------------------------------------------- 2. function adminObj($filtr="%") { unset($data); global $connection; global $data; $filtr = mysqli_real_escape_string($connection, $filtr); $resultSet = mysqli_query($connection, "tady je celkem dlouhej funkční dotaz"); while ($row = mysqli_fetch_array($resultSet, MYSQL_ASSOC)) { $data[] = $row; } return $data; } |
||
Beny Profil * |
#9 · Zasláno: 11. 1. 2008, 21:37:47
Já bych právě řek že se tim prvnim $objednavka = adminObj(); naplni $data tema neupdatovanejma zaznamama a pak tim druhym $objednavka = adminObj(); se k tomu přiloží ty aktualizovaný a pak se to vypíše s tim že ve $data je to oboji...nevim
|
||
BetaCam Profil |
#10 · Zasláno: 11. 1. 2008, 21:43:13 · Upravil/a: BetaCam
1. prubni tohle
function adminObj($filtr="%") { global $connection; $filtr = mysqli_real_escape_string($connection, $filtr); $resultSet = mysqli_query($connection, "tady je celkem dlouhej funkční dotaz"); while ($row = mysqli_fetch_array($resultSet, MYSQL_ASSOC)) { $abc[] = $row; } return $abc; } 2. Když už chces používat globální proměnné mělo by to bejt myslim takhle function adminObj($filtr="%") { global $connection; global $data; unset($data); $filtr = mysqli_real_escape_string($connection, $filtr); $resultSet = mysqli_query($connection, "tady je celkem dlouhej funkční dotaz"); while ($row = mysqli_fetch_array($resultSet, MYSQL_ASSOC)) { $data[] = $row; } return $data; } 3. pokud ani to neprojde prubni něco jako : function adminObj($filtr="%") { unset($GLOBALS['data']); global $connection; global $data; $filtr = mysqli_real_escape_string($connection, $filtr); $resultSet = mysqli_query($connection, "tady je celkem dlouhej funkční dotaz"); while ($row = mysqli_fetch_array($resultSet, MYSQL_ASSOC)) { $data[] = $row; } return $data; } |
||
Beny Profil * |
#11 · Zasláno: 11. 1. 2008, 21:50:21
aha, tak už je to ok, já myslel že unset maže i globální... Takže s unset($GLOBALS['data']); to funguje jedna radost...
Díky moc ;) |
||
Časová prodleva: 16 let
|
0