Doing serverside doğrulama sonra uzaktan komut gönderme

4 Cevap php

Ben bunun için curl kullanmak düşündüm ama yanılmışım gibi görünüyor. Ne yapmam gereken bir yazı yakalamak ve doğrulama amaçlı bazı veritabanı aramalarını yapmak ve sonra bir uzak URL doğrulanmış veri göndermek olduğunu.

Ben bir html formu doldurmamak ve javascript kullanarak göndererek bu yaptım ama bu bariz kusurları vardır. Ben bir yazı oluşturmak ve uzaktan url için bir form yayınlanmıştır sanki tam boyunca tarayıcı göndermek istiyorum.

Ben kıvırmak dokümanlar şey eksik? İyi ™ nedir Bunu yapmanın bir yolu?

4 Cevap

Bunun için curl kullanabilirsiniz.

Ama düşünmek sorunları olabilir. Çerezler, oturumlar vb ayarlanır zaman başka bir url bir tarayıcı fiziksel ileti. Bunlar sunucudan zaman sonrası ayarlanabilir olabilir. Siz de bu konuda daha fazla bilgi için SO soruları kazıma ekran kontrol etmelisiniz.

Bu durum böyle değil varsayarsak, sen, yazı almak alanları doğrulamak ve kıvırmak kullanarak repost gerekir. many many examples ve doing this vardır.

edit

  • Lütfen server.php için form göndermek
  • süreç / server.php alanları doğrulamak
  • remote.service Kıvrılmaları kullanarak yazılan valide parametreleri

Ben denedim, ama ne yapacağını, nihai hedef bu kadar için formu göndermek ve sunucuya ajax isteği yapar ve doğru veya yanlış döndüren bir javascript onSubmit () fonksiyonu eklemek değildir var.

Eğer javascript güvenebilirsiniz Yani, eğer ...

Sadece istek / yanıt bu gibi gidin:

+---------+   request    +--------+   curl request   +--------+
|         | -----------> |        | ---------------> |        |
| browser |              | url #1 |                  | url #2 |
|         | <----------- |        | <--------------- |        |
+---------+   response   +--------+   curl response  +--------+

Tarayıcı arkasında oturan kullanıcı bu HTML kaynağı hiçbir yerde bu yana son URL (yukarıdaki url # 2) ne olduğunu bilmenin yararı olmaz, bu yüzden onlar hiç kesmek ve aracı URL (url # geçmiş atlamak olmaz 1) el.

Ben bir "wget" veren CURL daha yönetmek kolay olma eğilimindedir bulabilirsiniz.

$remoteContent = `wget -o - http://someremoteurl`;

Kenara Matt'in yanıt doğru olduğunu mesafede. Ancak size ekran kazıma bağlantılar içeren konum uzak siteden yanıt, (size bunları kendiniz işlemek istiyorsanız) onları aramak ve değiştirmek gerekecek eğer - ki bir proxy sunucu oluştururken etmektedir at .. ..

-CF