it-swarm-tr.com

Joomla Kullanıcıları için bir kez form?

Benim kayıtlı Joomla kullanıcıları için bir özel html/php form yerleştirmek istiyorum, ancak kullanıcı tarafından yalnızca bir kez gönderilmesini istiyorum, yani bir kullanıcı gönderdiyse form, bir dahaki sefere açacaksa form sayfası, formu tekrar görmeyecek mi? Bunun yerine, özel mesaj (daha önce formu veya bla bla bla'yi göndermişsiniz gibi ....) Bunu nasıl başaracaksınız?

6
saibbyweb

"Özel" dediğinizde, umarım Joomla yöntemlerine bağlı kalacağınızı ve bunu bir modül veya bileşen yapacağınızı umuyorsunuz;)

Bunu yapmanın en iyi yolu, zaten kullandığınız yöntemlerden bazılarını kullanmaktır. Ve böylece kullanıcı nesnesini elde etmek istedim.

Dolayısıyla, kullanıcı formu gönderdiğinde, yalnızca girmiş olduğu verileri göndermekle kalmaz, aynı zamanda $user->username. İleride, artık kullanıcı adlarının verdikleri verilerle birlikte veritabanında saklandığını varsayalım.

Şimdi kullanıcı adını tablodan almak için bir veritabanı sorgusu yazmanız ve mevcut oturum açmış kullanıcıyla eşleştirmeniz gerekir. İşte küçük bir örnek:

$db = JFactory::getDbo();
$user = JFactory::getUser();

$query = $db->getQuery(true);
$query->select($db->quoteName('username'));
      ->from($db->quoteName('#__myform'));
      ->where($db->quoteName('username') . ' = '. $db->quote($user->username));
$db->setQuery($query);

$result = $db->loadResult();

if($result) {
    // display custom message
}
else {
    // display form
}

Formun önce çalışmasını ve ardından kullanıcı kontrolünü entegre etmeye başlamanın bir fikir olacağını düşünüyorum.

Bu yardımcı olur umarım

3
Lodder

Formu oluşturmak için hangi uzantıyı kullandığınızdan emin değilim. Ancak bunu "Chronoforms" olarak değiştirme olanağınız varsa, bu uzantı için burada önerildiği gibi bunu yapabilirsiniz: http://www.chronoengine.com/forums/posts/t9535/p9535/user-submit- sadece-once.html

NOT: Kronoform kullanmasanız bile, Joomla'nın standart işlevlerini ve çerçevesini kullandığı için alttaki yöntemi kullanabilirsiniz.

Bu tam olarak aradığınız şey, ancak yakalama, bence Joomla için en iyi ücretsiz form uzantısı olan kronoformları kullanmak zorundasınız. Destek mükemmel, bakımlı. Sitem için de kullanıyorum.

2

Bir formda özel alanlar oluşturmak için B2J Kişisini kullanın. Bang2Joom Ekibi tarafından sağlanan bir ücretsiz Joomla form yaratıcısı bileşenidir. Güzel ve kolay arka uç! Dostu destek!

Sadece dene!

Buradan indirin: http://www.bang2joom.com/joomla-components/b2j-contact

0
Gev Balyan