Hirdetés

2024. június 16., vasárnap

Gyorskeresés

Útvonal

Fórumok  »  Szoftverfejlesztés  »  jQuery topic

Hozzászólások

(#3251) Sk8erPeter válasza trisztan94 (#3249) üzenetére


Sk8erPeter
nagyúr

Hogy mi? Ez komoly, hogy úgy akarod megoldani a problémát, hogy 5 másodpercenként ránézel az elemre, hogy mi a helyzet vele? :D

(#3248) disy68:
Ez mennyire brutálisan béna a Bootstrapnél, hogy egyetlen karakterben tér el a két event, "slide.bs.carousel", illetve "slid.bs.carousel", úristen, ezt még nem is láttam. :DDD Ilyen alapon lehetett volna akár "slide.bs.carousel" és "slide.bs.carouse" is, hasonlóan lehetne érteni és észrevenni a különbséget. Micsoda egy idióta, aki ezt kitalálta.

Sk8erPeter

(#3252) pckownz


pckownz
senior tag

Hol van az aktualis "hatar", ahol mar a teljesitmeny rovasara megy a js?

Van barmi eszkoz amivel merni lehet a performance-ot? (Lehet akar html+css is)

Vagy manapsag mar nem kell ilyen miatt aggodni, normalis korulmenyek kozott?

(#3253) Sk8erPeter válasza pckownz (#3252) üzenetére


Sk8erPeter
nagyúr

Most ez olyan kérdés, amire lehetetlen értelmes választ adni, mert semmi konkrétumot nem tartalmaz, meg ilyen "attól függ" bullshittel szerintem senki nem akarja koptatni a billentyűzetét. :D

Sk8erPeter

(#3254) fordfairlane válasza pckownz (#3252) üzenetére


fordfairlane
veterán

Jelen helyzeteben szerintem a mobilok jelentik a szűk keresztmetszetet, (esetleg a 6-8 évnél régebbi gépek). Igaz, hogy az utóbbi években teljesítményben sokat fejlődtek, de még nem érik el a notebookok-asztali gépek teljesítményét.

x gon' give it to ya

(#3255) dqdb válasza Sk8erPeter (#3251) üzenetére


dqdb
nagyúr

Ez mennyire brutálisan béna a Bootstrapnél, hogy egyetlen karakterben tér el a két event, "slide.bs.carousel", illetve "slid.bs.carousel", úristen, ezt még nem is láttam. :DDD
Többféle iskola van különböző frameworkokben a before és after események elnevezésére:
1. jelen idő és múlt idő, így lett slide és slid
2. jelen idő és befejezett múlt idő, a Bootstrap szerintem ezt használja, és nem az előzőt, így lett slide és slid
3. folyamatos jelen és múlt idő, ekkor sliding és slid lenne
4. before prefix és jelen idő, ekkor beforeslide és slide lenne
5. és így tovább ...

Legalább próbálnak konzekvensek lenni, csak ez most kissé bénán jött ki. Én a 4. pontban vázolt megoldást szeretem, mert ott nem okoz gondot, ha egy igének a jelen és múlt ideje megegyezik (például read)

tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek

(#3256) Sk8erPeter válasza dqdb (#3255) üzenetére


Sk8erPeter
nagyúr

Igen, elég egyszerű lett volna elintézni, hogy ne egy darab, alig észrevehető karakterben (e) térjenek el. :) Amúgy persze, értem az okokat, de ez jelen formájában béna.
Főleg, hogy "belül" a sliding szócskát használják (miért nem lehetett akkor azt használni az eseménynél is?):
http://getbootstrap.com/dist/js/bootstrap.js
var Carousel = function (element, options) {
this.$element = $(element)
this.$indicators = this.$element.find('.carousel-indicators')
this.options = options
this.paused = null

this.sliding = null
this.interval = null
this.$active = null
this.$items = null
...

Azért a kódban külön megjegyzik, hogy "// yes, slid" :D
var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid"

Sk8erPeter

(#3257) dqdb válasza Sk8erPeter (#3256) üzenetére


dqdb
nagyúr

Igen, elég egyszerű lett volna elintézni, hogy ne egy darab, alig észrevehető karakterben (e) térjenek el.

vs

Legalább próbálnak konzekvensek lenni, csak ez most kissé bénán jött ki.

Én a konzekvenciára szavazok minden ilyen esetben, még akkor is, ha az néha bénán jön ki. És lássuk be, akkor lett volna/se lett volna rajtuk sapka, ha az eseményt nem slide-nak nevezik el, amikor netszerte mindenki ezen a néven illeti :P

tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek

(#3258) Sk8erPeter válasza dqdb (#3257) üzenetére


Sk8erPeter
nagyúr

Miért ne lennének konzekvensek akkor, ha
sliding.bs.carousel és slid.bs.carousel
vagy épp
slide.bs.carousel és afterslide.bs.carousel
a neve az eventeknek?
Mindegy, szerintem túlragoztuk ezt a témát, szerintem ez így szar. :DDD

Sk8erPeter

(#3259) dqdb válasza Sk8erPeter (#3258) üzenetére


dqdb
nagyúr

Ááá, dehogy, főleg annak tükrében, hogy egyikünk se fogja valószínűleg sosem használni ezt a controlt :DDD Én végig úgy értettem a konzekvenciát, hogy önmagukon belül konzekvensek, egyszer meghozták ezt az elnevezési szabályt, és azóta az összes komponensüknél használják az event handlerek elnevezésére: jelen idő esemény előtt, befejezett múlt idő esemény után.

Amúgy máshol van close/closed és show/shown ;]

tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek

(#3260) biker


biker
nagyúr

$(":submit").closest("form").submit(function(){
$(':submit').attr('disabled', 'disabled');
});

ez a kód miért disabledeli az összes submit buttont, nem csak azt amit nyomtam?
Amúgy nem hiba, mert ok, el lett küldve, és újratölt az oldal, de fura, hogy minden gomb disabled lesz :)

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3261) disy68 válasza biker (#3260) üzenetére


disy68
aktív tag

Azért, mert azt írtad :) . Amúgy ebben a formában nem túl optimális a dolog.

Ez illeszkedik az összes submit gombodra $(":submit") és majd a hozzájuk legközelebb eső form-ra closest("form") magyarul az összes formodra -> $("form").

Az eseménykezelődön belül pedig az összes submitra állítasz disabled attributumot.

Az eseményeknél használhatod az event.target és az event.currentTarget property-ket jQuery-nél is, ha az esemény kiváltójára akarsz hivatkozni pl. $(event.currentTarget)

Összerakva a fentieket:

$("form").submit(function(event){
// ha csak az adott form submitjára illeszkedjen
$(event.currentTarget).children(":submit").attr('disabled', 'disabled');
// ha az összesre, akkor az általad írt
$(':submit').attr('disabled', 'disabled');
});

“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude

(#3262) biker válasza disy68 (#3261) üzenetére


biker
nagyúr

szuper, köszi.
Egyszer csináltam olyat, hogy X checkbox pipálás esetén a mellette lévőt is pipálja be, ott mintha a closest megoldás lett volna, de lehet rosszul emlékeztem.
Kikeresem...
ja, nem, az is next ber elem előtti következő checkbox volt, vagyis saját sorában a mellette lévő.

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3263) pckownz


pckownz
senior tag

if ( jQuery('.csomag.col-md-12').children().length >0 ) {
//donothing
}
else {
jQuery('.csomag.col-md-12').css('display', 'none');
};

Ha jol gondolom ez igy nem lesz tul effektiv egy tobbszor elofordulo div eltuntetesere, amennyiben tenyleg ures. Mivel tudnam a legpontosabban (es gyorsan) meghatarozni az adott ures divet? :R

(#3264) Zedz válasza pckownz (#3263) üzenetére


Zedz
addikt

(#3265) martonx válasza pckownz (#3263) üzenetére


martonx
veterán

Azzal, hogy szerver oldalon nem generálsz ki hülyeséget, amit utána js oldalon kell taszigálni...

Én kérek elnézést!

(#3266) pckownz válasza Zedz (#3264) üzenetére


pckownz
senior tag

Koszonom :R

(#3267) biker válasza disy68 (#3261) üzenetére


biker
nagyúr

Most vettem észre, hogy kicsi bibi, jelen esetben így a lenyomott gomb nevét nem is küldi el, mivel disabled-et nem küld formként :(
Megy a javítás javítása :)

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3268) biker válasza disy68 (#3261) üzenetére


biker
nagyúr

Van valami jó tipped erre? Ha disabled, nem megy el, button meg readonly nem lehet :(
Esetleg ne a tulajdonságát vegyem disabled-re, hanem tüntessem el? De ha nem visible, akkor se nagyon küldi el, nem?

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3269) DNReNTi válasza biker (#3268) üzenetére


DNReNTi
őstag

Szerintem ha nem visible akkor elküldi, de ha mégsem akkor még ott van az opció hogy beállítod az opacity-t 0-ra. ;) na az tuti elküldi.

but without you, my life is incomplete, my days are absolutely gray

(#3270) fordfairlane válasza DNReNTi (#3269) üzenetére


fordfairlane
veterán

Szerintem egy form submit szerveroldali kezelését meg lehet oldani anélkül is, hogy az elküldött paraméterek közt ott lenne a submit gomb name=value párja. Request metódusból, hidden mező értékéből, stb...

x gon' give it to ya

(#3271) biker válasza fordfairlane (#3270) üzenetére


biker
nagyúr

Teljesen igazad van, jelen esetben viszont a feldolgozó rendszert érdekli némely gomb neve :(
Nem mindé, csak pár

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3272) disy68 válasza biker (#3271) üzenetére


disy68
aktív tag

Én is azt tudom ajánlani, amit (#3270) fordfairlane is, hozzáadsz a formhoz egy hidden inputot a szükséges name-mel.

“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude

(#3273) fordfairlane válasza biker (#3271) üzenetére


fordfairlane
veterán

Esetleg a lenyomott submit gomb value-ját átmásolod egy hidden mezőbe.

x gon' give it to ya

(#3274) biker válasza fordfairlane (#3273) üzenetére


biker
nagyúr

Valami hasonló lesz valóban a megoldás.

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3275) biker


biker
nagyúr

Lenne egy újabb érdekesség
Van itt egy kódocska, ami figyeli, hogy vonalkód olvasóval írtak a be az input mezőbe
Ha igen, akkor többek közt lefut egy ellenőrzés is, hog jött e ö betű. Sajna van pár occsó vonalkód olvasó, amiben se ascii mode, se numpad emu mode, se magyar kiosztás nincs, így ö betűt küld nullára.
A trükk ott kezdődik, hogy ez tökéletes, de ha benne hagyom azt a sort, ahol írtam "ezzel van a baj", és olyan kódot olvasok le, amiben volt nulla, akkor a mezőt elhagyva nem triggerelődik egy másik on('change' function) hívás!

Tehát ha olyan vonalkódot olvasok le, amiben nem volt nulla, és ezért nem cserélt ki ö-t nullára, akkor ha beírtam, és elhagyom a mezőt, meghívja az on change-t, ha volt benne nulla, és ezért kellett ö-t nullára cserélni, akkor beírás és elhagyáskor nem hívja meg az adott on change elemet.

ez normális dolog?

$(document).ready(function() {
var pressed = false;
var input_mezo;
var chars = [];
$(window).keypress(function(e) {
if (e.which==246) e.which=48; //ezzel van a hiba!
if (e.which >= 48 && e.which <= 57) {
chars.push(String.fromCharCode(e.which));
}
console.log(e.which + ":" + chars.join("|"));
if (pressed == false) {
setTimeout(function(){
if (chars.length >= 8) {
var barcode = chars.join("");
console.log(window.input_mezo + "Barcode Scanned: " + barcode);
$(window.input_mezo).val(barcode);
}
chars = [];
pressed = false;
},500);
}
pressed = true;
});
});

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3276) disy68 válasza biker (#3275) üzenetére


disy68
aktív tag

Egyrészt az event.which használata nem ajánlott, depricated állapotú. Másrészt ez egy read-only property, úgyhogy nem tudod felülírni. Rakd ki külön változóba és azt ellenőrizd.

“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude

(#3277) biker válasza disy68 (#3276) üzenetére


biker
nagyúr

értem, hogy a which deprecated, de ez nem válasz a problémára.
kiraktam külön változóba, és lecseréltem, bár marhára nem readonly, símán működött a felülírás safariban
Uganúgy nem hívódik meg az onchange esemény, mint eddig
ha olyan kódot olvasok be, amiben nem módosítom a 0-ö párost, lefut ha tab-al kilépek belőle, ha módosulós, nem fut le.ezt hogy?
mindjárt levideózom.

itt a video (ami lemaradt, ha copy-paste a 5999561010311 kód akkor is lefut az onchange event)
1-2 mezőket kézzel írtam be, utána mindent vonalkóddal, látható, meg se hívja az eseményt, és nem az a baj, meghívja, de nem találja a terméket
[link]

[ Szerkesztve ]

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3278) biker válasza disy68 (#3276) üzenetére


biker
nagyúr

amúgy mit használjak helyette?
Mert azon kicsit sírva röhögök, hogy ez deprecated, + a keycode és a charcode is deprecated, használjam a KeyboardEvent.key a doku szerint
Annak meg a kompatibilitása szerintük:

Hát azt hiszem kihagyom, megvárom míg használható lesz. Vagy mi a jó alternatíva?

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3279) dqdb válasza biker (#3277) üzenetére


dqdb
nagyúr

marhára nem readonly, símán működött a felülírás safariban
Az, hogy egy implementáció mit enged meg és mit nem, az nem érdekes jelen esetben. Az, hogy a szabvány szerint readonly, az az igazán érdekes. Onnantól kezdve, hogy te módosítasz egy egy ilyen mezőt, a böngésző erre adott reakciója nem lesz előre megjósolható (egy JS-ból lekezelhető exception lenne a legtisztább erre). Valószínűleg az esetedben az event handler hatására a Safari JS implementációja vagy egyszerűen dob egy exceptiont belül, és emiatt szakad meg az eseménykezelési lánc, vagy a visszatérése után észreveszi, hogy megváltozott az esemény, és ennek hatására úgy dönt, hogy ez már nem az az esemény, és megáll a feldolgozásával.

Hát azt hiszem kihagyom, megvárom míg használható lesz. Vagy mi a jó alternatíva?
Például az ilyen esetekben helyes fallback. Ha van KeyboardEvent.key, akkor azt használod, ha nem, akkor jöhet a legacy megoldás. Amúgy ez a mező is readonly.

Két megoldásod van:
1. te kezeled le a billentyűzeteseményeket teljesen, és módosítod a mező értékét ennek megfelelően
2. az átfordítandó billentyűzeteseményt lenyeled, és generálsz helyette egy új billentyűzeteseményt

tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek

(#3280) biker válasza dqdb (#3279) üzenetére


biker
nagyúr

Én is erre jutottam, hogy a beírás az aktiválná az onchanget, de utána ha módosítom, már nem jó
Kipróbálom, mi van ha fókusz elvételre hívom az eseményt
Amúgy kiraktam változóba, és ott bizgetem. De ugye azt is csak akkor, ha vonalkód olvasó volt. Kézzel tudsz ö betűt ütni ha akarsz, pl szörp

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3281) biker válasza biker (#3280) üzenetére


biker
nagyúr

focusout tökéletesen működik :)

Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

(#3282) Randomized


Randomized
csendes tag

Sziasztok!
Egy kis segítségre lenne szükségem jQuery-AJAX-PHP kombinációban, remélem jó helyen járok. :D
Szóval fejlesztek egy weboldalt, minden okénak tűnt. Windows-on tesztelem XAMPP programcsomaggal, localhost-on szoktam tesztelni. Megpróbáltam havernak megmutatni, hogy tesztelje le a dolgokat, hátha talál benne hibát, de neki nem volt jó egy része (mindjárt írok részleteket is). Szóval megpróbáltam én is, nálam jó volt (megint csak localhoston próbáltam). Utána megpróbáltam én is úgy, hogy beírtam az IP-címemet, azzal nekem sem volt jó.

Egy olyan dolgot akartam megcsinálni, hogy például regisztrációkor a script elküldi a form tartalmát egy PHP-nak, ami feldolgozza az adatokat, és értesíti a felhasználót az oldal újratöltése nélkül az eredményről.
Bejelentkezésnél is hasonló a helyzet. Kiírja, hogy sikerült bejelentkezni, de mégsem működik a dolog.

$_SESSION-al oldanám meg, ha ez számít.

Tehát ha "localhost" címen próbálkozok, akkor jó, de ha bármilyen IP-címen próbálkozok (pl. 127.0.0.1, 192.168.1.109) akkor a PHP-tól megkapja a választ, a php temp mappájában látszik is, hogy létrehozza a session adatait tároló fájlt, megnyitom és valóban benne vannak, a dolgok, amiknek ott kell lenniük.

Remélem valaki tudja, hogy miért csak akkor működik, ha localhoston nyitom meg az oldalt. Előre is köszi a segítséget :)

(#3283) martonx válasza Randomized (#3282) üzenetére


martonx
veterán

Remélem érzed, hogy ezt a kérdést a PHP topikban kellene feltenned?

Én kérek elnézést!

(#3284) Randomized válasza martonx (#3283) üzenetére


Randomized
csendes tag

Remélem tudsz olvasni, és észre vetted, hogy azzal kezdtem, hogy "emélem jó helyen járok." :)
Egyébként azért gondoltam, hogy ide tartozik, mert a PHP résszel nincs gondom, a jQuery-ben nem vagyok biztos. De a kedvedért átírom oda is. :)

(#3285) Sk8erPeter válasza Randomized (#3284) üzenetére


Sk8erPeter
nagyúr

Az a baj, hogy a hibaleírásból még az sem derül ki egyértelműen, hogy melyik "szereplő" lehet a probléma okozója, mert konkrétabb kódrészletek vagy pontosabb körülírás nélkül nem lehet kitalálni. Némi kód előrébb vihet.

Sk8erPeter

(#3286) Randomized válasza Sk8erPeter (#3285) üzenetére


Randomized
csendes tag

Script:
$(document).ready(function(){
var alert = $('#alert');

$("form:not('#regis'):not('#ranglista')").submit(function(e){
e.preventDefault();
var triggeredform = $(this);
$.ajax({
type: 'POST',
url: pageurl+$(this).attr('action'),
data: $(this).serialize(),
dataType: 'json',
encode: true
})
.done(function(data){
console.log(data);

if(!data.success){
//Ha nem sikerül
var errormessage = '';
$.each(data.errors,function(index,value){
errormessage = errormessage + value + '<br/>';
})
alert.css("background","#990000").html(errormessage).fadeTo(500,0.8).delay(3000).fadeOut();
}
else
{
//Ha sikerül
alert.css("background","#00FF00").html(data.message).fadeIn().delay(2500).fadeOut();
console.log(this);
// triggeredform.fadeOut();
if(data.reload == true)
{
window.setTimeout(function(){
window.location.href = pageurl+data.tourl;
},data.timeout * 1000)
}
}



}).fail(function(data){
alert.css("background","#FF0000").html("Szerver oldali hiba").fadeTo(500,0.8).delay(5000).fadeOut();
});

});


});

Feldolgozó PHP:
<?php

error_reporting(0);

require("config.php");
require("functions.php");
session_name("MyHomePage");
session_start();
$conn = mysqli_connect($conf_host, $conf_user, $conf_password);
$errors = array();
$data = array();

if(empty($_POST['userid']))
{
$errors['user'] = 'Nem adtál meg felhasználó nevet!';
}

if(empty($_POST['userpass']))
{
$errors['pass'] = 'Nem adtál meg jelszót!';
}

if(!isset($errors['user']) && !isset($errors['userpass']))
{
$user = mysqli_real_escape_string($conn,$_POST['userid']);
$pass = mysqli_real_escape_string($conn,$_POST['userpass']);
$query = mysqli_query($conn,"SELECT * FROM hp.users WHERE name LIKE '$user' AND password=PASSWORD('$pass') LIMIT 1");
if(mysqli_num_rows($query) != 1)
{
$errors['login'] = 'Hibás felhasználó név vagy jelszó!';
}
}

if(!empty($errors))
{
$data['success'] = false;
$data['errors'] = $errors;
}
else
{
$userinfo = mysqli_fetch_object($query);
$_SESSION['user_id'] = $userinfo->id;
$_SESSION['user_name'] = $userinfo->name;
$_SESSION['user_rank'] = $userinfo->rank;
$data['success'] = true;
$data['message'] = "Sikeres bejelentkezés!";
$data['reload'] = true;
$data['tourl'] = "/?oldal=felhasznalo";
$data['timeout'] = 0.5;

}

echo json_encode($data);
?>

(#3287) martonx válasza Randomized (#3284) üzenetére


martonx
veterán

Nos ez esetben nincs más dolgod, mint debugolva megnézned, hogy mi történik / nem történik meg. PHP-t xdebug-al tudod debugolni, javascriptet meg a kedvenc böngésződdel.

Én kérek elnézést!

(#3288) Sk8erPeter válasza Randomized (#3286) üzenetére


Sk8erPeter
nagyúr

Ha jól értettem, valójában szerveroldalon az látszik, hogy tényleg sikeres a belépés - vagy mégsem? -, csak kliensoldalon nem gömbölyű valami, de ezt nem fejtetted ki - igazából a lényeget -, hogy mi is nem működik egész pontosan. Maga az oldal újratöltése nem történik meg? Vagy újratöltés után mégsincs bejelentkezve már a felhasználó, pedig korábban úgy tűnt, hogy be van jelentkezve - tehát mégis szerveroldali a para? Vagy kliensoldalon nem látszik valami úgy, ahogy látszania kellene? Vagy mi (nem) történik?

Ezt az alábbit még azelőtt írtam, hogy visszaolvastam volna, és láttam volna, hogy elméletileg be van jelentkezve a júzer (de lehet, hogy csak úgy tűnik, pedig igazából nem), végül is a benne írtak állnak továbbra is, de mivel itt OFF, meg valószínűleg nem is itt lesz a megoldás, ezért OFF-ba is raktam:
A PHP-kódnál sokat segít hibafelderítés esetén, ha nem nyomod el a hibakijelzést az error_reporting 0-ra állításával (persze kizárólag fejlesztői, nem production környezetben).
Egyébként a potenciális hibák lekezelése finoman szólva nem túl alapos, pl. csatlakozás után egyáltalán nem ellenőrzöd, hogy minden rendben ment-e az adatbázissal való kapcsolat létrehozása során. A mysqli_query visszatérési értékét is érdemes lenne leellenőrizni, mielőtt ráhívsz a visszaadott eredményre egy mysqli_num_rows-t - igaz, ennek elméletileg nullát kellene visszaadnia, ha már eleve előtte a query sem futott le helyesen.
A mysqli_real_escape_string-es bohóckodás nagyon rossz és rég elavult gyakorlat, helyette parametrizálni kell a query-t (lásd itt), és a nyelvi eszközök pedig elintézik, hogy az átpasszolt paraméterek le legyenek kezelve (rosszindulatúság és egyéb szempontokkal kapcsolatban).
Másik hiba: beállítod az $errors['pass']-t, és aztán később ellenőrzöd, hogy !isset($errors['userpass'])-t. :) (másik kulcs, pass vs. userpass... :) ) Egyébként sem sok értelmét látom, hogy más kulcsot használsz fel az $errors tömbödben, mint az eredetileg klienstől (a formban az adott mező name attribútuma formájában) kapott kulcsoknál.
Egyébként mysqli-nél szerintem nagyon csúnya a procedurális formula, az objektumorientált API nem véletlenül áll rendelkezésre, de persze ízlések és pofonok.

Sk8erPeter

(#3289) trisztan94


trisztan94
őstag

Hali,

Van egy <span> elemem aminek a tartalma nagyon sok külböző helyről tud módosulni. Ahelyett, hogy mindre kötnék egy eseménykezelőt, magát a <span> tartalmát akarom folyamatosan nézni, és amennyiben módosul a szöveg benne, lefuttatni egy függvényt.

Próbáltam:

$('span').on('change', fn(e){});
$('span').on('contentchanged', fn(e){});
$('span').on('DOMCharacterDataModified', fn(e){});
$('span').on('DOMSubtreeModified', fn(e){});

Egyik sem jó.

Valakinek ötlet?

:R

[ Szerkesztve ]

https://heureka-kreativ.hu

(#3291) trisztan94 válasza Sk8erPeter (#3290) üzenetére


trisztan94
őstag

Pont ez kellett, koszi! :R

https://heureka-kreativ.hu

(#3292) PowerBuldog


PowerBuldog
veterán

Sziasztok!

Írtam egy rövid kódot:

jQuery(document).ready(function($){
$('input[name="addon-1131-csomagolasszallitas-1[]"]').prop('checked', true).attr("disabled", true);;
});

Szépen működik, kipipálja a szállítási díjat. Azonban az a gondom, hogy amikor a terméket a kosárba rakom nem számolja fel a kötelező szállítási díjat. Azonban ha ugyan ezt a checkboxot kézzel pipálom ki akkor jó.
Mi lehet a baja?

Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html

(#3293) DNReNTi válasza PowerBuldog (#3292) üzenetére


DNReNTi
őstag

Tippem:
A checkbox kattintásra van event listener, ami beállít egy változót, hogy számolja vagy ne a szállítási ktg-et, de ez nem fut le, ha te prop()-al beállítod a checkbox állapotát. Megoldás ha a prop() mellett, beállítod ezt a változót ilyenkor is, vagy a másik: triggert() használsz. Remélem beletrafáltam.

but without you, my life is incomplete, my days are absolutely gray

(#3294) PowerBuldog válasza DNReNTi (#3293) üzenetére


PowerBuldog
veterán

Sajnos úgy tűnik se a trigger('change') se a trigger('click') nem hoz változást, nem adódik hozzá a végösszeghez ebben a formában

Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html

(#3295) disy68 válasza PowerBuldog (#3292) üzenetére


disy68
aktív tag

Szerintem az, hogy disabled-re állítod. Ha később a form a .serialize() -zal lesz kiértékelve, az kihagyja a disabled inputokat.

“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude

(#3296) PowerBuldog válasza disy68 (#3295) üzenetére


PowerBuldog
veterán

azzal semmi baj nem volt, kellett bele egy ilyen sor
$('.cart').trigger('woocommerce-product-addons-update');

és már megy is :)

Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html

(#3297) PowerBuldog


PowerBuldog
veterán

üdv

adott lenne 2 legördülő menü.
mindkettőben ugyan azok az értékek vannak
lehetséges-e, hogy ha beállítom az elsőt, akkor a második értéke is ugyan azt felveszi?

Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html

(#3298) martonx válasza PowerBuldog (#3297) üzenetére


martonx
veterán

persze :)

Én kérek elnézést!

(#3299) PowerBuldog válasza martonx (#3298) üzenetére


PowerBuldog
veterán

és esetleg tudsz ebben segíteni is? :)

Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html

(#3300) martonx válasza PowerBuldog (#3299) üzenetére


martonx
veterán

Ha csinálsz egy konkrét jsfiddle példát (mondjuk a hülye kérdésre hülye választ ezzel alapból megspórolhattad volna), akkor én vagy bárki más szívesen segít ebben.

Én kérek elnézést!

Útvonal

Fórumok  »  Szoftverfejlesztés  »  jQuery topic
Copyright © 2000-2024 PROHARDVER Informatikai Kft.