veritabanına istekte bulunmadan önce boşlukları kaldırabilirsin.
$varyant = '123456-MOR -SERİ';
$varyantYeni = str_replace(' ', '', $varyant);
neyi ne kadar bildiğinin pek bir önemi yok, ne yapabileceğini biliyor olman yeterli, iş seçme hakkına sahipsin çünkü. ama ülkemizde freelance çalışmak çok zor, insanlar ödeme yapmak istemiyor, bilende bilmeyende bir şeyler yapmaya çabalıyor ve fiyatları bu durum çok düşürüyor. yurt dışında ise, çok ciddi bir ingilizce gerektiriyor ve insan orada da insan, 3 gün kendini ana dilinde ifade edemeyen son müşteri adayım yüzünden saçlarımı tel tel yolup fiver hesabımı kapattım. sona doğru diyaloglar artık şöyleydi;
- ne kadara yapacaksın?
+ 85 dolar, popüler bir yayıncı olsam 120den aşağıya fiyat vermezdim.
- en fazla 50 dolar veririm
+ üzgünüm, detaylı olarak süreci anlattım, zorunda olmadığım halde konsept tasarım için 1 günümü de harcadım, 5 farklı dil kullanmam gerekiyor ve en az 1 hafta sürecek. 1 haftada 50 dolar kazanmak ister miydiniz?
- bende freelancer çalışıyorum dostum, 1 haftada 50 dolar kazanmayacaksın bu işi çok yanlış anlamışsın.
+ 10 dolarlık işleri tercih ederim, 1 saatte bitirebilirdim çünkü 10 dolarlık işleri. ama bu iş tam zamanlı bile en az 3 gün sürer.
sonra biraz ağzını bozdu bende kendisinden sipariş almayacağımı söyledim. ardından aslında aklındaki bütçenin 100 dolar olduğunu söyledi, söyledi ama yine almadım siparişini. ağzını bozup, yeterli standartlar da ingilizce bilmediğim üzerinden aşağılayıcı birkaç söz etti. bu adam ingiliz ve ingilizce öğretmeni birde : ) aynı adamla öncesinde geçen farklı bir diyalog;
- tamamladığınız da wordpress siteme gömeceğim kodları
+ o zaman bunu bir wordpress eklentisi olarak yazmam gerekiyor, doğrusu bu olmalı.
- hayır eklenti istemiyorum
+ emin misiniz? standartı böyle olmalı, diğer türlü dizin açıp, kodları eklemek amatörlük olur. isterseniz esnek bir api de yazabilirim eklenti olmasada.
- hayır sen dediğimi yap
+ arkadaşım ben robot değilim, sorgularım çünkü yanlış bir talepte bulunuyorsun.
tabi bu kadar kibar geçmedi diyaloglarda, mesajı aldığını umuyorum. freelance bilende çalışıyor bilmeyende, çelik gibi sinirlerin var mı onu söyle. yeri geliyor, monarşi düzeninde kendisine üst tabaka muamelesi göstermeni bekleyen bu tarz tiplerde iş talep edebiliyor.
ondan önceki müşteri adayımda azerbaycanlıydı, 2 hafta hayatımdan çaldı sağolsun. forex tarzı bir borsada chrome eklentisi istedi, tamamladım. ama siparişi vermedi. benim hatam, yabancı sayılmaz diye biraz fazla üstüne düştüm ve ne istediğini tam bilmediği için eklentiyi tamamlayana kadar siparişi vermeyi bekletebilirsin dedim. para-çokomel eğrisinden çıkma : )
iş tecrüben yoksa ve zamanın şimdiye kadar sadece öğrenerek geçtiyse, teknik olarak hazır olduğunu nasıl anlayacağın ise tecrübe ve bilgine dayanıyor. kendi kendine müşteri şöyle bir iş istese bunu yapamam diyorsan; önce bilmediğine emin olduğun konular üzerine git ve pratik yap bir süre daha.
kendi adıma, ben freelance çalışmayı beceremedim, teknik sebeplerden değil ama. bende ticaret kafası yok, kendimi pazarlayamıyorum ve karşımdakini iş yaptırsın diye ikna etmeye çalışmıyorum. sadece olumlu yönleri gösterip, olumsuz yönlenlerden bahsetmeyerek insanların aklını çelmeye de çalışmıyorum. ayrıca kolay alınıyor ve çabuk sinirlenebiliyorum. bir de iş sürecinde müşterinin aklına gelmeyen ama iş tamamlandıktan sonra aklına gelen istekleri oluyor, en rahatsız olduğum durum, revize adı altında yeni taleplerde bulunulması; bu tarz durumlarda ekstra ücret talep et. çünkü onun taleplerini zaten yerine getirmişsin ve ortada senden kaynaklı hata veya eksik bir unsur yok.
evet. gerçekten uzun bir süre uğraşmışsın eğer dediğin kadar vakit aldıysa, SimpleXMLElement
bunun için tercih edeceğim bir sınıf değil. son mesajında belirtiğin okumayı, örneğimi inceleseniz ve dökümana sadece bir göz atsanız basitçe şöyle yapabilirdiniz;
$xml = new SimpleXMLElement('https://korfezotoyedekparca.site/martas1.xml', LIBXML_PARSEHUGE, true);
$urun = $xml->xpath('//Products');
header('content-type:text/xml');
foreach($urun as $u){
echo $u->asXML();
}
ama benim tercihim DomDocument
olurdu, daha fazla seçeneği mevcut, üstelik html ile çalışacağınız zamanda bu sınıfı kullanabilirsiniz, ilerde faydası olur bu açıdan;
$file = file_get_contents('https://korfezotoyedekparca.site/martas1.xml');
$dom = new DomDocument();
$dom->loadXML($file);
$urunler = $dom->getElementsByTagName('Products')[0];
header('content-type:text/xml');
echo $dom->saveXML($urunler);
ikincisi ayrıca daha performanslı.
ikisininde sonucu şu;
var_dump
kullanarak aldığın sonuçların uzunluğunu görebilirsin. sen sınıfı yanlış başlatmışsın, ayrıca bu kadar büyük bir xml verisinde sadece bir tane olan tagı döngüye almışsın. sonuçlarıda aliasdan değil ana değişkenden okuyorsun, tabi ki de tek sonuç dönüyor. addChild
ekler, sen boş dökümana son sonuçları ekliyorsun. benim verdiğim örneğin sonuçlarını döngü içerisinde kullanarak ekleme yapman gerekiyor. tam kod da ekleyebilirdim çalışan bir örnek için ama, bazı arkadaşlar çözüme ulaşana kadar (çalışan tam kod örneğine) patır patır yanıt verip, sonra konuyu çözümsüz bırakıp yeni sorular soruyorlar. halbu ki işlerini gördüler, sorunlarını çözdüler. içimden gelmiyor artık tam kod eklemek. örnek orda, mantık burada. denersen doğrusunu yapacaksın.
verdiğim örnekle yapacağın da şu yani;
foreach($urun as $e){
}
toplama konsunda ise, spesifik durumlarda seçimlerinize devam etmek için ve yeni sonuçlar üretmek için, referans olarak okuyacağınız değerlerde xpath
methoduna regex
kullanarak başvurmanız gerekmekte.
$xml->xpath('//Stock/@WarehouseID');
tüm resimlerinin genişlik ve yükseklik değerlerini aldıktan sonra, en yüksek değerler doğrultusunda yeni bir çerçeve oluşturup resimleri buna ekleyerek birleştir veya sadece yeniden boyutlandır.
https://www.php.net/manual/tr/function.imagecreate.php
seçiciyi form olarak belirtince içerisinde yer alan tüm inputları zaten seçer, sorunu detaylandırmanı ve mümkünse kod eklemeni tavsiye ederim.
önce keşke dökümanı inceleseydiniz, kullanımınız bir çok farklı açıdan yanlış.
bu benim hazırladığım durumu en yalın haliyle özetleyen kod
$xml = new SimpleXMLElement('https://korfezotoyedekparca.site/martas1.xml', LIBXML_PARSEHUGE, true);
$urun = $xml->xpath('//Products');
print_r($urun);
hatan ise, ürünleri okumak değil, anahtarlarını kullanarak ürün oluşturmaya çalışmak. başlangıcın böyle olmalı. örnek kodda tüm ürünlerin bilgileri ve xml nitelikleri mevcut. istediğiniz şekilde oluşturabilirsiniz. ürünleri oluştururken döngüye almanız gerekiyor, okurken değil.
php'nin kendi sitesindeki örneği ise;
function RecurseXML($xml,$parent="")
{
$child_count = 0;
foreach($xml as $key=>$value)
{
$child_count++;
if(RecurseXML($value,$parent.".".$key) == 0) // no childern, aka "leaf node"
{
print($parent . "." . $key . " = " . $value . "<BR>\n");
}
}
return $child_count;
}
döküman adresi https://www.php.net/manual/tr/class.simplexmlelement.php
ben kullanmadım. ama yasadışı herhangi bir iş yapmayacaksan ve alanadın varsa, 4gb ram, 2cpu, limitsiz trafikli paylaşımlı linux hostingimi ücretsiz olarak 2 aya kadar (süresi o kadar kalmış, 2 senedir kullanmıyorum) kullanman için alanadını tanımlayabilirsiniz eğer isterseniz.
atob('Y3BuczEudHVyaG9zdC5jb20KY3BuczIudHVyaG9zdC5jb20=');
reklama girmesin dedim : ) olur derseniz alanadınızın name server'ını değiştiriniz, bende hosting'e ekleyip ftp ve mysql hesabı açıp bilgileri iletirim.
https://prototurk.com/soru/5808-css-scss-ic-ice-transition-kullanim-sorunu şu konudan sonra css konularından uzak duruyorum. sadece mantığı hakkında bilgi vereyim istedim yinede.
resimdeki örnek için, gradient kullanacaksınız. bunda açıda da yok, righ to şeklinde ilerlemiş. şeffaf beyaz.
bir örnek hazırladım, https://codepen.io/Munzevi/pen/NWYredZ burdan yola çıkarak devam et. resimdeki gibi istiyorsan progressbar'ın ilk divi olan ".progress" sınıfının background'u da düzenlemen gerekiyor. onuda progress-bara yaptığın arkaplanın aynın yine şeffaf, diğer rengi ise örneğin %10 opaklık da siyah olanını yapacaksın.
edit: ben hazırlarken, bir arkadaş daha hazırlamış. görsem hazırlamazdım.
javascript için id her zaman ilk gelendir. seçiçi hiyerarşisi üzerine araştırma yapmanı tavsiye ederim. css hiyerarşisi olarak araştırırsan daha çok kaynağa ulaşabilirsin, html ve javascript de dahildir bu hiyerarşiye. ayrıca bu tarz bir kullanımda class bile versen, yine ilk geleni seçerdi. spesifik bir tanım yapmak için ilişkilendirebileceğin bir mantık olmalı. input > myselect
gibi