Autor Zpráva
Beny
Profil *
zdravim, dá se prosimvás nějak vymazat promena která byla naplnená přes fetch_array? Diky
Kcko
Profil
unset();
Beny
Profil *
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>&nbsp;&nbsp;&nbsp;<a href=\"chobj.php?action=edit&amp;id_obj=".$obj['cislo']."\">Změnit</a> </td>\n\t\t\t\t<td>&nbsp;&nbsp;<a href=\"administration.php?action=delete&amp;id_ob=".$obj['cislo']."\"> Vymazat</a>&nbsp;&nbsp;&nbsp;&nbsp;</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
Beny

Méně přehlednějš by ten script napsat nešel???
Beny
Profil *
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 *
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
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 *
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 *
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
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 *
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 ;)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0