Par paša programmētāja aizmāršību, manā gadījumā, rūpējas klase, kura ne tikai eskeipo mainīgos, bet arī atvieglo man dzīvi.
Ideja ir apmēram šāda: http://paste.php.lv/9c9d7081ce90347e038179...31f03e?lang=php
Tev tas parent'u masīvs nav pareizs. Tam vajadzētu izskatīties kaut kā šitā:
<?
$arr = $parr = array();
$res = sql_query('SELECT id, parent_id, name FROM menu') or die(mysql_error());
while($row = mysql_fetch_object($res)) {
$arr[$row->parent_id][$row->id] = $row->name;
$parr[$row->id] = $row->parent_id;
}
$parents = array();
function get_parents(&$out,$in,$id){
if(!array_key_exists($id,$in)){
return false;
}
$out[] = $in[$id];
get_parents($out,$in,$in[$id]);
}
get_parents($parents,$arr,$_GET['section']);
echo get_menu(0, $arr);
?>
Un attiecīgi padosi get_menu() arī gatavo parent'u masīvu un nočekosi vai konkrētais id ir iekš dotā masīva
Ja pareizi sapratu, tad ideja ir tāda - visu atvērto kategoriju id samet masīvā, tāvā gadījumā tev jāatrod visus $_GET['section'] parentus, un ciklā pārbaudi ar in_array().
Ja tev nekādas darbības, pēc datu nosūtīšanas, nav jāveic, tad vienkārši nedefinēt "success" parametru $.ajax() gadījumā vai callback parametru $.get() un $.post() gadījumos.
P.S. Funkcijas dokumentācija, parametri, kas norādīti kvadrāt iekavās, nav obligāti jānorāda.
Patiesībā lielu daļu problēmu var atrisināts pats, uzdodot sev jautājumu, kam un kā būtu jānotiek (:
Šoreiz es tā īsti arī nesapratu, ko tu gribi panākt.
Ja forma izskatās kaut kā šādi
<input type="file" name="pics[]" />
<input type="file" name="pics[]" />
<input type="file" name="pics[]" />
Tad nepareizs ir tikai pirmais if's un move_uploaded_file() vietas.
Debugo skatoties print_r($_FILES) un ciklā print_r($uf)
Pieprasījumam nav ne vainas, vaina ir ciklā.
$sql = "SELECT cat.cid, cat.cat_virsraksts, cat_topic.virsraksts, cat_topic.apraksts FROM cat, cat_topic WHERE cat_topic.main_cat_id = cat.cid";
$res = mysql_query($sql);
$tmp_id = 0;
while($row=mysql_fetch_object($res)){
if($row->cid!=$tmp_id){
// izvadam to vietu, kur ir "IT Risinājumi", etc
}
// Izvadam "IT", "Dzelži", etc
$tmp_id = $row->cid;
}
Lieto izdomu (:
$updates=array();
foreach($_POST['data'] as $key=>$value){
$updates[]=$key."='$value'";
}
$updates=implode(", ",$updates);
mysql_query("UPDATE `tabula` SET $updates WHERE id=$id");
Jebkurā gadījumā - ko redz brouzeris, to redzu arī es.
Kaut vai tas pats mozillas plugin's firebug uzrāda visus pieprasījumā ielādētos failus, ar nosūtītajiem/saņemtajiem header'iem, saturu, etc.