Anonymní profil Miloslav Kubín – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Miloslav Kubín – Programujte.comAnonymní profil Miloslav Kubín – Programujte.com

 

Příspěvky odeslané z IP adresy 213.155.247.–

JavaScript, AJAX, jQuery › Vyvoláním change(function()…
7. 9. 2013   #181126

Tak jsem se nakonec se všemi radami prokousal k cíli  ;)       Vyřešil jsem to pěkně ajaxem

PHP::


foreach ($postaCSV->getDBsluzby() as $z)
{
	$output[] = array('code' => $z['code'], 'action' => FALSE);

	if (Configuration::get('MODULE_DOBIRKA') == $order->module && Configuration::get('DEFAULT_DOBIRKA') == $z['code'])
		$output[] = array('code' => $z['code'], 'action' => TRUE);
				
	foreach ($postaCSV->selectDBbaliky(' WHERE `id_carrier` = \''.Tools::getValue('id_order_carrier').'\' AND `code_zasilky` = \''.Tools::getValue('submitPostaSluzbyAjax').'\'') as $k)
		if ($z['code'] != $k['id_sluzby'] || (Configuration::get('MODULE_DOBIRKA') == $order->module && Configuration::get('DEFAULT_DOBIRKA') == $z['code']))
			$output[] = array('code' => $k['id_sluzby'], 'action' => TRUE);

}


die(Tools::jsonEncode($output));


Kód vložený do šablony ::

<select name="{$order->id}_balik_{$order->id_carrier}" id="{$order->id}_balik_{$order->id_carrier}" style="width:100px;">
    
    {foreach $selectDBdopravci as $z}
		{foreach $selectDBzasilky as $k}
			{if $k['code'] == $z['code_zasilky']}
				<option type="text" label="{$k['code']} - {$k['name']}" value="{$z['code_zasilky']}" {if $z['code_zasilky'] == {$DEFAULT}}selected="selected"{/if}>{$z['code_zasilky']}</option>
			{/if}
		{/foreach}
	{/foreach}

	</select>
	<a id="{$order->id}mk_settings_anchor" class="settings_anchor" title="{l s='Nastavit '}" style="float:right">
		<span class="monosp">[+]</span>
	</a>
	<div class="settings_group_table" id="{$order->id}mk_settings" style="display:none">
		<table class="group_table">
			<tr>
				{assign var=nazev value=1}
				{foreach $selectDBsluzby as $z}
					{if $z['active']==2}
						<td style="width:1%;">{$z['code']}</td>
						<td style="width:20%;">{$z['name']}</td>
						<td style="width:1%;">
							<input type="checkbox" id="{$order->id}_sluzba_{$z['code']}" name="{$order->id}_sluzba_{$z['code']}" value="{$z['code']}" {if in_array($z['code'], $typ_dopravci)}checked="checked"{/if} {if ($module_dobirka == $order->module) && ($default_dobirka == $z['code'])}checked="checked"{/if}>
						</td>
						{if $nazev == 1 || $nazev == 2 || $nazev == 3}
							<td style="width:3%;">
							</td>
						{/if}
						{if $nazev == 4}
							</tr>
            				<tr>
							{assign var=nazev value=0}
						{/if}
						{assign var=nazev value={$nazev}+1}
					{/if}
            	{/foreach}
			</tr>
		</table>
	</div>
        <span class="success_{$order->id}" style="display:none"><a href="{$linka}" target="_new" title="{l s='Zobrazit sledování'}">
        	<img src="../img/t/AdminFeatures.gif" alt="Zobrazit sledování" /></a></span>
            
	<input type="hidden" id="CSV_{$order->id}" name="CSV_{$order->id}" value="{$order->id}" />
	<input type="hidden" id="CSV_carrier_{$order->id}" name="CSV_carrier_{$order->id}" value="{$order->id_carrier}" />
		
		<script type="text/javascript" >
			$(function() {
				$("#{$order->id}_balik_{$order->id_carrier}").change(function() {
					
					$.ajax({
						url: "{$link->getAdminLink('AdminOrders')}",
						type:"POST",
						dataType: "json",
						data : {
							submitPostaSluzbyAjax		: $("#{$order->id}_balik_{$order->id_carrier}").val(),
							id_order					: $("#CSV_{$order->id}").val(),
							id_order_carrier			: $("#CSV_carrier_{$order->id}").val()
						},
						success: function(jsonData) {
							for(var i= 0; i < jsonData.length; i++)
                				$('#{$order->id}_sluzba_' + jsonData[i].code).attr('checked',jsonData[i].action);
							}
					});
    			});
			});
		</script>

Snad to pomůže i někomu jinému

JavaScript, AJAX, jQuery › Vyvoláním change(function()…
12. 8. 2013   #180263

Ahoj,

bohužel jsem javascriptový analfabet, nemáš zájem o spolupráci?  Písni mi když tak na mail milousek70@seznam.cz, odměna samozřejmostí.

Předem díky

JavaScript, AJAX, jQuery › Vyvoláním change(function()…
5. 7. 2013   #178865

Zdravím všechny co mají ajax v malíčku  ;)

Řeším problém jak ajaxem vybrat aktivní checkboxy výběrem z databáze po vyvolání onchange v selectu.

Zde je příklad:


<select id="selected_carrier" name="selected_carrier" onchange="">
       {foreach $Carriers as $carrier}
		<option value="{$carrier['id_carrier']}" {if $selected_carrier == $carrier['id_carrier']}selected="selected"{/if}>{$carrier['name']}</option>
	{/foreach}
</select>

<table class="group_table">
{assign var=nazev value=1}
	{foreach $zasilky as $z}
		<td style="width:3%;">{$z['code']}</td>
                <td style="width:25%;">{$z['name']}</td>
                <td style="width:3%;">
			<input type="checkbox" name="{$selected_carrier}_typ_zasilky_{$z['code']}" value="{$z['code']}" {if in_array($z['code'],$prirazene_zasilky) == true}checked="checked"{/if} />
		</td>
		{if $nazev == 1 || $nazev == 2}
            	<td style="width:4%;">
		</td>
		{/if}
		{if $nazev == 3}
			</tr>
            		<tr>
			{assign var=nazev value=0}
		{/if}
		{assign var=nazev value=$nazev+1}
            {foreachelse}
		</tr>
	{/foreach}
</table>

S ajaxem nejsem zatím moc velký kamarád  tak budu moc rád  za jakoukoliv  pomoc  ;)

PHP › Sledování zásilek u České po…
14. 9. 2012   #163171

#8 Paja2
Tak to jseš dobrej .... já si dokážu akorát stylem pokus omyl upravit nějaké ty hotové scripty. Aspoň už se orientuju co kde jak dělá a k čemu je to vůbec dobré :D

Jaká je Tvá představa odměny?

PHP › Sledování zásilek u České po…
14. 9. 2012   #163167

#6 Paja2
Super !!! Přesně takto jsem si to představoval  ....  jak je to jednoduché když víš jak na to  ;)

Já jako starý samouk bych na to nepřišel

PHP › Sledování zásilek u České po…
14. 9. 2012   #163163

To by bylo super .... používám prestashop, stačilo by mi kdyby jsi mi vytvořil základ tj. dotazovací script na stránky České pošty a pak návratové hodnoty bych si už sám začlenil do presty.

Kdyby pošta měla nějaké API tak bych si s tím poradil i sám, ale takto vůbec nevím jak data získat.

Samozřejmě se můžeme domluvit na odměně  ;)

PHP › Sledování zásilek u České po…
14. 9. 2012   #163160

Samozřejmě ... toto vím .... já bych právě potřeboval abych měl script a podle těchto čísel zásilek které mám přiřazené k objednávkám na jedno kliknutí zjistil jestli už byly doručeny nebo ne. U dobírek se mi dost často stávalo, že si je zákazníci nevybírali a vracely se mi zpět, nyní stačí když např po 5 dnech není vyzvednutá poslat SMS o uložené zásilce a vyzvednutí je skoro 100%.

Miloslav Kubín
PHP › Sledování zásilek u České po…
13. 9. 2012   #163111

Ahoj,

potřeboval bych nějakým způsobem do svého e-shopu získávat data o stavu zásilek u České pošty , důležitá je pro mě pouze hodnota jestli už byla zásilka doručena. Uměl by si s tím někdo poradit?

Díky za rady  Miloš

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032020 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý