ziedinjsh Posted September 26, 2014 Author Report Share Posted September 26, 2014 ar var_dump: $photos ir NULL $photoOrder ir array(1) { ["photo"]=> array(31) { [0]=> string(4) "1155" [1]=> string(4) "1154" [2]=> string(4) "1145" [3]=> string(4) "1144" [4]=> string(4) "1143" [5]=> string(4) "1142" [6]=> string(4) "1141" [7]=> string(4) "1140" [8]=> string(4) "1139" [9]=> string(4) "1126" [10]=> string(4) "1127" [11]=> string(4) "1128" [12]=> string(4) "1153" [13]=> string(4) "1129" [14]=> string(4) "1130" [15]=> string(4) "1131" [16]=> string(4) "1132" [17]=> string(4) "1133" [18]=> string(4) "1134" [19]=> string(4) "1135" [20]=> string(4) "1136" [21]=> string(4) "1137" [22]=> string(4) "1138" [23]=> string(4) "1152" [24]=> string(4) "1125" [25]=> string(4) "1151" [26]=> string(4) "1148" [27]=> string(4) "1149" [28]=> string(4) "1150" [29]=> string(4) "1147" [30]=> string(4) "1146" } } $Key atgriež tukšumu $value atgriež arī tukšumu wtf? kur paliek id no li?? Quote Link to comment Share on other sites More sharing options...
indoom Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) saglabājot foreach liec $photoOrder['photo'] un izvadot vajag kā iepriekš id="photo_pid", kā prasīts serialize dokumentācijā Edited September 26, 2014 by indoom Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted September 26, 2014 Author Report Share Posted September 26, 2014 (edited) saglabājot foreach ar photoOrder['photo'] rāda Invalid argument supplied for foreach() in <b>/home/ebphotog/public_html/adm/save.php</b> on line <b>166</b> serialize, tu domāju šādi: jQuery( "#photolist" ).sortable({ opacity: 0.6, cursor: 'move', update: function(event, ui){ var postData = jQuery('#photolist').sortable('serialize', { key: 'photos' }); jQuery.post('save.php?w=sortable', {photos:postData}, function(re){ console.log(re); }); } }); jQuery( "#photolist" ).disableSelection(); šādā veidā izvada: string(4) "1146", jebkuru bildikad kustina droši vien ir kāda elementāra kļūda, bet bāc, nevaru iebraukt.. datubāzē viņš saglabā, bet izvadīt un atspoguļot lapā pēc kārtības neizdodas Edited September 26, 2014 by ziedinjsh Quote Link to comment Share on other sites More sharing options...
vbz Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) Tev jau atbildēja, kāpēc Invalid argument supplied for foreach() un ko darīt - skatās line uz augšu 166, ja var_dump izvada skaisti array struktūru, tad domā situācijas, ko no sākuma pats uzrakstīji - atgriež tukšu stringu ... un skaties vēl atpakaļ sava koda vēsturē. Vispār strings ar ir iterējams(tikai ne tukšs strings): $string='abc'; $string[0] == 'a'; output true. Nu tur protams unicodei mainās dažas lietas, bet pašai string struktūra jau nemainās! > šādā veidā izvada: string(4) "1146", jebkuru bildikad kustina Tev izvada pašlaik vienmēr pēdējo ierakstu, kāpēc, domā pats, ja kveriju nemainīji! Edited September 26, 2014 by vbz Quote Link to comment Share on other sites More sharing options...
indoom Posted September 26, 2014 Report Share Posted September 26, 2014 Ja html ir <ul id="photolist"><li id="photo_1">name</li><li id="photo_2">name</li><ul> un js ir ar { photos: jQuery('#photolist').sortable('serialize') } tad pamēģini php pusē bez foreach parse_str($_POST['photos'], $photoOrder) $ids = implode(',', array_map('intval', $photoOrder['photo'])); // clean mysqli_query($db, "SET @i := 0"); mysqli_query($db, "UPDATE photos SET sort = (SELECT @i := @i + 1) WHERE FIND_IN_SET(pid,'$ids') ORDER BY FIELD(pid, $ids) "); Pievērs uzmanību, kur ir photos un kur ir photoUn izvadot, kārto ar order sort asc Quote Link to comment Share on other sites More sharing options...
vbz Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) /> tad pamēģini php pusē bez foreach Piekrītu,// sāc ķidāt vienu elementu no db (nu ja jau nestrādā globāls pieprasījums), sql sintakse prasa semikolu (ja raksta vairākas rindas), bet tas sīkums, labi uzrakstīts - ar to arī jāsāk Te ir atkal piemērs par iepriekšējo topiku - testēšana, vismaz unit testus sev uzraksti, nu nevar braukt pa dzīvi, man nestrādā, ja nesaproti, katru rindu, ko uzrakstījis, tad neraksti vispār. Zelta likums: Tev ir jātbild par katru koda rindiņu, ko uzrakstīji! Nu sviests - kā Tu vari rakstīt kaut ko, ja pats nesaproti, ko uzrakstījis! Nu tad sāc ar mazumiņu. uzrakti es ielieku bildi db un tad viņu izvadu Vienmēr, nu ne vienmēr, saskaldi savu kodu, saskaldi to mazās drumstalās un testē atsevišķi, uztaisi vienu testa tabulu un uztaisi izvadi, tas nav nemaz tik sarežģīti. Skatoties, ko Tu gribi sasniegt, vnk nav tiem unit testiem metodoloģijas, cik Tu gudrs būsi, tā arī strādās tas unit, smejies vai raudi, atkarīgs cik smadzenes gudras, skarbi! Sadrumstalot daudz reizes nostrādā labāk, nekā skatīties uz zemi no kosmosa. Kad paņem unitu un uzraksta pārbaudi, ļoti bieži mēs atrodam kļūdu, bet ne vienmēr :) Edited September 27, 2014 by vbz Quote Link to comment Share on other sites More sharing options...
jurchiks Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) >sql sintakse prasa semikolu Tikai konsolē un .sql failos. Edited September 26, 2014 by jurchiks Quote Link to comment Share on other sites More sharing options...
vbz Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) >sql sintakse prasa semikolu Tikai konsolē un .sql failos. nu sitnakse nenosaka izņēmumus, labi tas bija sīkums, arī kodā jāraksta ir: "select * from all;", to es neesmu izdomājis, tāda ir sql sintakse Bā, kāda atšķirība, kur raksta sql, kodā, uz poda vai Siguldas bobslejas trasē, sisntakse paliek sintakse It kā sīkums, bet arī tas Tevi organizē, ja raksti, tad raksti pēc standarta, tik uzmanies, ka tie standarti Tevi neieliks kā pērtiķi būrī Tas bija sīkums!!!! un iesaku $sql=""; rakstīt ar sprintf(), tas Tevi arī organizē, ja protams nav gatavs tramework, kas filtrē, sql tīru stringu bīstami rakstīt, kkādus vismaz mainīgo filtrus tas nodrošina, tas neder $sql=" select " . kautkas . " select tālāk;"; Edited September 26, 2014 by vbz Quote Link to comment Share on other sites More sharing options...
vbz Posted September 26, 2014 Report Share Posted September 26, 2014 > sql tīru stringu bīstami rakstīt, nu tad to pieņemiet kā likumu Quote Link to comment Share on other sites More sharing options...
vbz Posted September 26, 2014 Report Share Posted September 26, 2014 (edited) > kā bināru kodu glabāt, tikai ceļu vai blob, blob var nokrist un neatjaunosi no db, paliek paraststs hard, nu labi tur rezerves kopijas, bet paliek jautājums, neglabājiet binārus datus, nu rezerves kopijas taisiet, bet nav vērts taisīt ceļu uz to failu, viņš jau tā pat ir miris, kāpēc nav vērts taisīt ceļus, sistēma nobruka, nav arī vairāk ceļu Ja sistēma nenobruka - iet blob Un nevajag man te batonus bāzt par noSQL, interesanti, bet viss balstās uz veco json Edited September 26, 2014 by vbz Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted September 27, 2014 Author Report Share Posted September 27, 2014 Paldies! Ir progres, bet sakārtot var tikai vienu bildi, tas ir, pirmo bildi. To bildi kuru ielieku pirmo, saglabājas, bet pārējās nē, nākošo bildi var kādu grib, bet pēc refrešošanas viņa tur nebūs.. vissas bildes maina kārtību katru reizi, izņemot 1mo Quote Link to comment Share on other sites More sharing options...
codez Posted September 27, 2014 Report Share Posted September 27, 2014 Man nav bijusi problēma glabāt binārus failus Elastisearch - pie tam tas skeilojās. Vieno tik serverus klāt klusterim un viss vienkārši strādā. NoSQL! Lai gan, ja runa ir par publicējamiem bināriem failiem, tad gatavie cloud storage ar CDN servisi. Quote Link to comment Share on other sites More sharing options...
Kasspars Posted September 27, 2014 Report Share Posted September 27, 2014 Vetsīt, ja tu šito atrisināsi uztaisi reportu. Varbūt tev gļukains php Quote Link to comment Share on other sites More sharing options...
vbz Posted September 27, 2014 Report Share Posted September 27, 2014 (edited) Paldies! Ir progres, bet sakārtot var tikai vienu bildi, tas ir, pirmo bildi. To bildi kuru ielieku pirmo, saglabājas, bet pārējās nē, nākošo bildi var kādu grib, bet pēc refrešošanas viņa tur nebūs.. vissas bildes maina kārtību katru reizi, izņemot 1mo Nu man izklausās, ka tomēr nav php pusē vaina(var_dump izvada perfektu array ar visiem id ...), Tev, kad bildes atrāda html id ir unikāli? Nu it kā muļķīgs jautājums... bet tomēr. Tur tālāk apstrādē ir vaina, kāda nezinu, var tikai taustīties <li class="ui-state-default" id="photo_<?php echo $data['pid']; ?>"><img src="../photos/300/<?php echo $data['name'];?>"/></li> uzģenerētais id sanāk uz visu html source unikāls? varbūt kads echo $data['pid'] paliek tukšs = id="" Edited September 27, 2014 by vbz Quote Link to comment Share on other sites More sharing options...
vbz Posted September 27, 2014 Report Share Posted September 27, 2014 Paldies! Ir progres, bet sakārtot var tikai vienu bildi, tas ir, pirmo bildi. To bildi kuru ielieku pirmo, saglabājas, bet pārējās nē, nākošo bildi var kādu grib, bet pēc refrešošanas viņa tur nebūs.. vissas bildes maina kārtību katru reizi, izņemot 1mo sāc ķidāt ajax, { photos: jQuery('#photolist').sortable('serialize') } Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.