Annalee yorum php. AJAX yardımı için basit bir yorum sistemi. PHP yorum kodu

PHP'deki yorumlar, HTML'de öne çıkan yorumlara benzer. PHP yorumlarının sözdizimi özel bir karakter dizisi ile başlar ve bu özel karakterler arasındaki tüm metinler yorumlayıcı tarafından yok sayılır.

HTML'nin ana meta yorumu, perakendecilere sitenizin çıktı koduna bakabilmeleri için bir hatırlatıcı olarak hizmet etmektir. RNR'nin yorumları, kokunun izleyiciler için kabul edilemez olduğuna dikkat çekiyor. PHP yorumlarını görüntülemenin tek yolu, düzenleme için bir dosya açmaktır. Lütfen PHP programcıları için PHP yorumlarını kullanın.

HTML'de yorumları nasıl dolaşacağınızı unuttuysanız veya bilmiyorsanız, aşağıdaki popoya hayret edin.

php yorum sözdizimi: tek satırlık yorum

Html'nin yalnızca bir tür yorumu olduğu gibi, PHP'nin iki veya daha fazla türü vardır. Tartıştığımız ilk tür, tek satırlık bir yorumdur. Tercümanla konuşmak olan Tobto yorumu, yorumlarda bu satırda görünen her şeyi yok sayar. Bu yorumu seçmek için "//" veya "#" karakterlerini girin ve metnin tamamı sağ elle yazılır ve PHP yorumlayıcısı tarafından yok sayılır.

Psst..."PHP yorumlarımı göremezsiniz!"; // yankı "hiçbir şey"; // echo "Adım Humperdinkle!"; # echo "Ben de bir şey yapmıyorum"; ?>

Sonuç:

Selam Dünya! Psst ... PHP yorumlarımı göremezsiniz!

Yankı komutlarımızdan birkaçının genişletilmediğini belirtmek için, ek özel karakter yorumları için onları yorumladık. Bu tür yorumlar genellikle çöken ve yanıltıcı kod hakkında hızlı bir not için kullanılır veya bazen bir satır PHP kodu görebilirsiniz (vergi amaçlı).

PHP yorumlarının sözdizimi: zengin sıralı yorum

HTML - yorumlarının yanı sıra, PHP yorumları büyük kod blokları üzerinde yorum yapmak veya bir dizi yoruma yorum yazmak için kullanılabilir. PHP'de normal yorumlar "/*" ile başlar ve "*/" ile biter. Bu semboller arasında bilinen her şey göz ardı edilir.

Sonuç.

hakkında yazdığımda. Yani eksen, sana orada daha az baktık" aç gözlü"temsilciler. Bunların başındaki Prote" açgözlülük"Bize yardım ediyor, genellikle dışarıda ve yaramaz. Aşağıda popoyu göstereceğim, başkalarında kokanları görmek çok açık ve ayrıca size sigortalarını nasıl değiştirip büyüyeceğinizi göstereceğim. niceleyici tekrarı "doğrusal".

Şimdiden klasikleşen basit bir popoya göz atalım:

$str = "Küçük sıra C gözü pek görülen.";
.*<\/b>
echo $sonuç_str;
?>

Muhtemelen, bunun kshtalt'ına işaret ediyorsunuz: " Küçük here_fat_seeing here_fat_seeing". Bu sadece etiketin ortasındaki bir yer değişikliğidir.<B> arka arkaya tarafımızdan verilen ödevlerde, etiketin kendisine göre. Ancak biz buna öyle demiyoruz, buradaki kırıklar gruba giriyor. niceleyicilerin açgözlülüğü". Sonuç olarak, bülün değiştirilmesi cilt etiketinin ortasında değildir.<B> ve etiketin ilk eğrisinden en son eğrisine kadar. Kimin hırsı var.

Eksen, değişikliğin istediğimiz gibi yapılması için kodu yazmaktı:

$str = "Küçük sıra C gözü pek görülen.";
$result_str = preg_replace("/ .*?<\/b>/i", "bold_view_burada", $str);
echo $sonuç_str;
?>

Tüm bunlar, niceleyiciden sonra bir tekrar ekleyerek bu normal virazı değiştirdik. .* "bir beslenme belirtisi, ki bu bir işarettir" "ledachim" niceleyicisini çal. Şimdi sonuç şöyle olacak: " Küçük here_fat_seeing here_fat_seeing görmek."Ne elde etmeye çalıştık.

eminim sorunu fark etmişsindir "açgözlü" niceleyiciler kokunun nasıl çalıştığını anlamıştı. Ayrıca basit bir işaretle nasıl düzeltebileceğinizi de öğrendiler. ? Bu konu çok önemlidir ve normal mahkemelere yeni gelenlerin çok sayıda aynı afları vermesi, "açgözlü" niceleyici tekrarı Tüm hissi sonuna kadar görmediğiniz için makaleyi tekrar okuyun.

Krok 1 - XHTML

Yorumun gülünü merak etmeye başlıyoruz. Tsey kodu PHP sınıfı tarafından oluşturulan Yorum .

demo.php

Im'ya Koristuvacha
30 Mart 2010

yorum metni

div avatar gravatar.com'a bağlı kaldığımız için avatar resminden intikam alıyoruz. PHP aşamasında rozeti kalıplamaya dönelim. tamamlanacak div isim div zaman yorumun metni.

XHTML'nin son önemli unsuru yorum formudur. Vaughn yardım almaya gidiyor İLETİ. Bıyık alanları, suç URL'si doldurulabilir.

demo.php

Yorum ekle

Form, AJAX yardımı ile desteklenmektedir. Revizyon sayılacak arka plan modu içinde gönder.php. Cilt alanı önemli bir öğedir etiket, eklenen öznitelikten için .

Croc 2 - PHP

PHP, veritabanı ile iletişimi yönetir danih MySQL bu, yorum için bir taslak oluşturur. Vіn ayrıca AJAX isteğinin tamamlanmasını hariç tutar ve yorumun verilerini tablodan önce ekler yorumlar.

demo.php

/* / Tüm yorumları seçiyoruz ve bir dizi $comments nesnesi gibi */ $comments = array(); $result = mysql_query("SEÇ *Yorumlardan SİPARİŞ KİMLİĞİ ASC"); while($row = mysql_fetch_assoc($result)) ( $yorum = yeni Yorum($satır); )

MySQL sorgusu bir tablodan tüm kayıtları seçin ve bir dizi saklayın $yorum sınıf nesneleri yorum. Bu dizi, betiğin sonraki saati için görüntülenmelidir.

demo.php

/* / Yorumları tek tek işaretle: */ foreach($comments as $c)( echo $c->markup(); )

Cilt yorum yöntemi işaretleme(), doğru HTML kodunu oluşturan, yan tarafta görüntülenmeye hazır. Aşağıda sınıfın metoda atanması verilmiştir.

Sınıf bir sıra basi danikh (yardım için sahiplik) alır. mysql_fetch_assoc()) ve її değişiklikten kaydedin $veri. Vaughn yalnızca sınıf yöntemiyle kullanılabilir.

comment.class.php - Bölüm 1

sınıf Yorum ( private $veri = dizi(); genel işlev __construct($satır) ( /* / Yapıcı */ $bu->data = $satır; ) genel işlev işaretleme() ( /* / Tsey yöntemi Yorum için XHTML işaretlemesini göster */ // Bir takma ad ayarlayın, böylece onu yazmazsınız $this->data: $d = &$this->data; $link_open = ""; $link_close = ""; if($d["url"])( // Yorum eklerken URL bu şekilde girilir, // gönderilen etiketleri açıp kapatıyoruz $link_open = ""; $link_close = ""; ) // UNIX saat biçimini değiştirin: $d["dt"] = strtotime($d["dt"]); // Bir promosyon resmi eklemeniz gerekiyor: $url = "http://".dirname($_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"])."/img/default_avatar.gif"; dönüş"
".$link_open." ".$bağlantı_kapat."
".$link_open.$d["ad"].$link_close."
".date("d BENİM",$d["dt"])."

".$d["vücut"]."

"; }

Yorumlarda bir avatar sunmak için Vicorist gravatar betiği. Gravatar, bir avatarın kimliğini bir e-posta adresiyle belirleyen başka bir hizmettir. Avatar görüntüsü, kodlanmış işlevin ek iletimi için kolayca kaldırılabilir md5() gravatar.com'daki e-posta adresiniz.

Komut dosyası, eşleştiği URL adresini atar, görüntünün tam adresini atar. default_avatar.gif. Resim paralel bir md5 karmasına gönderiliyorsa, gönderilen e-posta adresi için doğru avatar bulunamadıysa, alternatif bir resim görüntülenecektir.

comment.class.php - Bölüm 2

public static function validate(&$arr) ( /* / Bu yöntem, AJAX aracılığıyla değiştirilecek verileri doğrulamak için doğrulanır. // Verileri doğrulamak için true/false doğrula ve / olarak geçirilen $dizi dizisini geri çağır bir parametre veya veri veya af hakkında beni bilgilendirin.*/ $errors = array(); ",FILTER_VALIDATE_EMAIL))) ( $errors["email"] = "Lütfen geçerli bir E-posta girin."; ) if(!( $data["url" ] = filter_input(INPUT_POST,"url",FILTER_VALIDATE_URL))) ( // URL alanında geçersiz bir URL varsa, giriş yoksa: $url = ""; ) function: if (!($data["body"] = filter_input(INPUT_POST,"body",FILTER_CALLBACK,array("options"=>"Comment::validate_text"))) ( $errors["body"] = "Lütfen, yorum metnini girin."; ) if(!( $data["name"] = filter_input(INPUT_POST,"name",FILTER_CALLBACK,array("options"=>"Comment::validate_text"))) ( $hatalar ["name"] = "Lütfen bir ad girin."; ) if(!empty($errors))( // Bu şekilde ohmil, $errors dizisini $dizi'ye kopyalayın: $arr = $errors; yanlış döndür; ) // Veriler doğru girilirse, veriler $dizi'ye kopyalanır : foreach($data as $k=>$v)( $dizi[$k] = mysql_real_escape_string($v); ) // email is küçük harften suçlu: $arr["email"] = strtolower(trim($arr["email"])); true döndür; )

Yöntem doğrulamak()(ayrıca sınıfın bir parçası) olarak işaretlendi statik. Tse, yoganın ek yapı için aracı olmadan çağrılabileceği anlamına gelir. yorum::doğrula() sınıfa bir nesne oluşturmadan. Bu yöntem, AJAX üzerinden geçirilen verileri doğrular.

Şu anda kullanıma sunulan yeni filtre işlevini kullanma yöntemi PHP 5.2.0. Bu sayede scripte aktarılan verileri kolayca dönüştürebilir ve filtreleyebiliriz. Örneğin, filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL) mi'ye saygı duyulduğu anlamına gelir, chi є $_POST["url"] doğru URL. Eğer öyleyse, fonksiyon değişikliğin değerini döndürür, aksi halde değeri döndürür YANLIŞ.

Böyle bir işlevi kazanmadan önce kazanmak gerekiyordu. düzenli virüs verilerin yeniden doğrulanması için (alınan tasarım serilerinden Eğer). Dodatkovoy perevagoy Ve aldıklarımız belirli dönüşümler olarak verilir.

Ayrıca bir işlev yükleyebilirsiniz, böylece verilerde ek değişiklikler yapabilirsiniz.

comment.class.php - Bölüm 3

özel statik işlev validate_text($str) ( /* / Bu yöntem FILTER_CALLBACK olarak adlandırılır */ if(mb_strlen($str,"utf8")<1) return false; // Кодируем все специальные символы html (<, >, ", & .. etc) ve // ​​yeni satır karakterini etikete dönüştür
: $str = nl2br(htmlspecialchars($str)); // Yeni satırın eksik olan tüm karakterlerini görün $str = str_replace(array(chr(10),chr(13)),"",$str); $str döndür; )

Kalan Yöntem validate_text iki hafta içinde tersine çevirme fonksiyonu olarak transfer edildi filtre_giriş. XSS saldırılarını etkili bir şekilde engellemek için tüm özel HTML karakterlerini yeniden yazar. Ayrıca yeni satırın sembollerini etiketlerle değiştirin
.

gönder.php

/* / Bu dizi, / komut dosyasına geçtiği gibi hatırlatılmalı veya verilmelidir / veya af hakkında hatırlatıcı olarak. /*/ $dizi = dizi(); $validates = Yorum::validate($dizi); if($validates) ( /* Her şey yolunda, veri tabanına veri ekleyelim: */ mysql_query(" INSERT INTO comments(name,url,email,body) VALUES ("".$dizi["name"]." ", "".$arr["url"]."", "".$arr["email"]."", "".$arr["gövde"]."")"); $dizi[ "dt "] = date("r",time()); $arr["id"] = mysql_insert_id(); /* / $dizi içindeki veriler mysql beslemek için hazırlanmıştır, / ve visnok'u koymamız gerekiyor ekranda, böylece / dizideki tüm öğeler hazır: /*/ $dizi = array_map("stripslashes",$dizi); $insertedComment = new Comment($dizi); "=>1,"html"=>$ InsertComment->markup())) ; ) else ( /* Pardon uyarısını görmek */ echo "("status":0,"errors":".json_encode($arr )")"; )

gönder.php AJAX isteği ile verilerden yorum alıyorum. Bunu dönüştürmek ve bir JSON nesnesini görüntülemek, bu durumda ya eklenen bir yorumdan bir XHTML işaretlemesi ya da bir af değişikliği. jQuery vicorist gücü durum Neyin gerekli olduğunu belirtmek için - veya afları hatırlatmak veya bir tarafa bir yorum işareti eklemek için.

Aşağıda iki izmarit gösterilmiştir.

İyi şanlar

( "status": 1, "html": "Yorumun Html Kodu Buraya Geliyor..." )

güç html Yorum kodunu silin.

Af ile ilgili alıntı

( "durum": 0, "hatalar": ( "e-posta": "Lütfen geçerli bir E-posta girin.", "gövde": "Lütfen bir yorum metni girin.", "ad": "Lütfen bir ad girin." ) )

Açık aflar için, jQuery af nesnesi arasında döngü yapar ve af bulunan alanlardan gelen talimatları görüntüler.

Krok 3 - CSS

Şimdi, işaretleme doğru bir şekilde oluşturulduysa ve yanda gösteriliyorsa, stil ayarına gidebiliriz.

style.css - Bölüm 1

.comment, #addCommentContainer( /* Yorumlar için stil */ padding:12px; width:400px; position:relative; background-color:#fcfcfc; border:1px düz beyaz; color:#888; margin-bottom:25px; / * CSS3 yuvarlatılmış kenarlar ve gölgeler */ -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px; shadow:2px 2px 0 #c2c2c2, box-shadow:2px 2px 0 #c2c2c2; :absolute;width:50px;background:url("img/default_avatar.gif") tekrarsız #fcfcfc; /* Dikey olarak ortalanmış: */ margin-top:-25px; top:50%; -moz-box-shadow :1px 1px 0 #c2c2c2;-webkit-box-shadow:1px 1px 0 #c2c2c2;box-shadow:1px 1px 0 #c2c2c2;

div .yorum і #addYorumKonteyner aynı tarz giyin. Yuvarlatılmış kenarlar ve gölgeler için bazı CSS3 kuralları vardır.

style.css - Bölüm 2

.comment .avatar img( display:block; ) .comment .name( font-size:20px; padding-bottom:10px; color:#ccc; ) .comment .date( font-size:10px; padding:6px 0; position:absolute;right:15px;top:10px;color:#bbb; ) .comment p, #addCommentContainer p( font-size:18px; addCommentContainer textarea( /* Giriş Stili */ display:block; border:1px solid # ccc; margin:5px 0 5px; padding:3px; font-size:12px; color:#555; font-family:Arial, Helvetica, sans-serif; ) #addCommentContainer textarea( width:300px; ) label( font-size :10px; ) etiket span.error( color:red; position:relative; right:-10px; ) #submit( /* Gönder düğmesi " */ background-color:#58B9EB; border:1px solid #40A2D4; color:# FFFFFF; imleç: işaretçi; yazı tipi ailesi: "Sayısız Pro" -weight:bold;padding:4px;margin-top:5px;-moz-border-radius:4px;-webkit-border-radius:4px; border-radius :4px;) #s ubmit:hover( background-color:#80cdf5; border-color:#52b1e2; )

Diğer bölümde, yorumlar ve form öğeleri için stiller belirledik. önemli ölçüde seçici giriş, hangisi öznitelikte öğelerin nadas olduğunu görür tip.

Croc 4 - jQuery

Şimdi jQuery'ye geçelim.

script.js

$(document).ready(function()( /* Gelen kod sadece DOM saldırısından sonra kontrol edilir */ /* Danish ensign kaç yorumun düzenlendiğini hatırlar: */ var work = false; /* Düzenleme formunu yakalayın: */ $(" #addCommentForm").submit(function(e)( e.preventDefault(); if(working) return false; Working = true; $("#submit").val("Çalışıyor.."); $ ("span .error").remove(); /* send.php içindeki form alanlarını değiştir: */ $.post("submit.php",$(this).serialize(),function(msg)( work = false; $ ("#submit").val("Gönder"); if(msg.status)( /* / Ekleme başarılı olduysa, slaytDown efektiyle yan tarafa / geri kalanının altına bir yorum ekleyin /*/ $(msg.html).hide ().insertBefore("#addCommentContainer").slideDown(); $("#body").val(""); ) else ( /* / Bu bir af, döngüye giriyor /*/ $.each(msg.errors,function(k,v)( $("label").append(" "+v+""); )); ))), "json"); )); ));

Mi vikoristovuemo viklik fonksiyonları $(belge).hazır() Podії için yaka priyazuє funktіyu. Zminna Çalışma AJAX'tan robotu yeniden satın almasını isteyen kişiye sinyal veren bir sancak gibidir (bu şekilde, bir ve aynı yorumun tekrarı kaydedilir).

POST AJAX istemek için dönüş işlevi, yetkili tarafından geçersiz kılındı durum, yorumun başarıyla eklendiğini belirtmek için. Olduğu gibi, yorumun geri kalanından sonra animasyonla işaretini yan tarafa ekleyeceğiz. kayıp düşmek.

Sorunlar varmış gibi, afları hatırlatıyor gibiyiz, ekleyerek açıklık hata görünür öğeye etiket(eleman özniteliği etiket intikam almak İD giriş, scho maє pardon).

Hazır!

Visnovok

Komut dosyasını sunucunuzda çalıştırmak için bir tablo oluşturmanız gerekir. yorumlar MySQL veritabanında. Dosyadan ek SQL kodu arayabilirsiniz. tablo.sql phpMyAdmin'in SQL sekmesine girmeniz gereken . Daha sonra MySQL veritabanı ile bağlantının parametrelerini dosyaya eklemek gerekir. connect.php .

25.04.2017


Herkese merhaba!
PHP'nin temellerini sıfırdan öğrenmeye başlayalım!
Bu derste PHP'de ne tür bir yorum olduğunu anlatacağım ve yorumunuzu koda yazmaya çalışmak pratik. Ama yine de hepsi değil. Size daha fazlasını, kodu nasıl yorumlayacağınızı ve neden çalışmanız gerektiğini anlatmak istiyorum.

yorum nedirPHP
Yorum yapPHP– kodda İsveççe yönlendirme ve düzenlemeler için PHP-rozrobnik'in bir ipucu.

İnceleme için web sayfasını açan koristuvach için PHP çalışmayan yorum yapın. Navit bir koristuvach olarak yan çıkış koduna hayret etmeyi düşünür, yorum zaten görünmez, yani bütün php kodu gibi.

PHP yorum kodu

PHP kodu için 2 yorum kullanın:

→ tek sıra
→ bagatoryum

⇒ PHP için tek satırlık yorum
Tek satırlık bir yorum için "//" veya "#" karakterlerini takip edin

Bu sembollerden sonra tek satırda yazılan her şey yok sayılacak ve yorum olarak dikkate alınacaktır.

Güncellemelere abone olun"; # abone olun (yorum) ?>


Güncellemelere abone olun

⇒ PHP için rastgele yorum
PHP için rastgele bir sıralı yorum "/*" karakteriyle başlar ve "*/" karakteriyle biter.
Bu semboller arasında bilinen her şey yok sayılır ve yorum olarak saygı görür.
Bagatoryadkovy yorumu, sıra sıra bir çaçanın kaydı gibi muzafferdir.

Ekranda bir an için aşağıdaki metni izleyin:

Blog okuyucularına selamlar - site !!!

not: Kodunuzu yorumladığınızdan emin olun. Umursuyorsan, 1-2 kayadaki kodda çalıştığın her şeyi tahmin et, merhametlisin, şansın zaten küçük. Navitt yakscho ve tahmin et, sonra düğüne birkaç saat ayırdın - ne, nereye gidiyorsun?
Geleceği kendiniz toplamak için - kodu yorumlayın ve kendiniz "DYAKUYMO !!!" diyeceksiniz.
Kodda bir yorum bırakın, 1 saat ödünç alın, ancak sizi bir sonraki büyük günde kurtarın.

PHP kodunu yorumlayın

Diyelim ki PHP kodu yazdınız ama nedense kodun 2. satırını görmeniz gerekiyor.
Kodu görmek için acelem yok, özellikle bir php koduysa, daha hızlı yorumlayacağım. Ve raptom'un kodu çevirmesi gerekecek. Yorum yapmak daha kolay, kodu yeni bir şekilde yazmak daha düşük.

Kod nasıl yorumlanırPHP
Tek satırlık yorum içeren bir örnek:

Güncellemelere abone olun"; ?>

Zengin bir yorumdan bir örnek.

tarayıcılar