رفتن به مطلب

راهنمایی برای ساخت یک فرم


پست های پیشنهاد شده

سلام.می خوام یه فرم برای وردپرسم بذارم.می خوام یه فرم ساده بسازم که مثلا دو تا مورد رو بگیره مثلا نام و سن و تو قالب بذارم و آژاکس بتونم ثبتش کنم و تو وردپرس هم صفحه ی مخصوص داشته باشه.چیکار باید بکنم؟

افزونه نمی خوام می خوام یه سیستم برای خودم بسازم و کم کم ارتقاش بدم از کجا باید شروع کنم؟

ویرایش شده توسط arash39561
لینک به ارسال

خوب خود فرم رو میخواین بنویسین یا فرم رو نوشتین و میخواین کدنویسی کنین؟

لینک به ارسال

خود فرم رو می خوام بنویسم ببینین من فقط این مورد ساده می خوام انجام بدم.می خوام توی قالب یه Input بذارم که مثلا نام و نام خانوادگی رو رو وارد کنیم و بعد که روی ثبت کلیک کردم توی یه جدول دیتابیس وردپرسم که برای این فرم ساخته شده ذخیره بشه ( نمی خوام جدول رو دستی بسازم می خوام مثل پلاگین ها که وقتی نصب می کنی خودکار جدول هم می سازن باشه) ممنون می شم کمک و راهنمایی کنید فکر کنم کار خیلی ساده ای هم هست.

ویرایش شده توسط arash39561
لینک به ارسال

کار ساده ای هست فقط اینکه شما باید منطق کدها رو متوجه بشین تا بتونین بنویسین.

نکته اول این هست که باید بصورت افزونه یا در فانکشن پوسته کدها باشن

برای ایجاد دیتابیس:


http://codex.wordpress.org/Creating_Tables_with_Plugins
http://code.tutsplus.com/tutorials/custom-database-tables-creating-the-table--wp-28124

برای ثبت در دیتابیس:

http://wordpress.stackexchange.com/questions/113936/simple-form-that-saves-to-database

لینک به ارسال

سلام.من یه نمونه ساختم و بعد از فعال سازی جدول ساخته شد و فرم هم در قالب گذاشتم اما توی insert گیر کردم ذخیره نمی شه. :( ممنون می شم کمکم کنید


<?php
/*
Plugin Name: Test man
Plugin URI: 1
Description: 1
Version:1
Author URI: 1
*/

register_activation_hook(__FILE__,'myplugin_install');
global $jal_db_version;
$jal_db_version = "1.0";
function myplugin_install() {
global $wpdb;

$table_name = $wpdb->prefix . "mytable";

$sql = "CREATE TABLE $table_name (
id mediumint(9) NOT NULL AUTO_INCREMENT,
time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
name VARCHAR(120) NOT NULL,
UNIQUE KEY id (id)
);";

require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
add_option("jal_db_version", $jal_db_version);
}
$name = $_POST['namefield'];
if ( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == 'updatemyform' ) {
$DataUpdate = $wpdb->insert( $table_name, array(
'id' => null,
'time' => current_time('mysql'),
'name' => $name,
));
}

function my_form(){?>
<ol>
<form method="post" action="">
<li>نام شما <br /><input type="text" id="namefield[]" value="" /></li>
<li><input name="submit" type="submit" id="submit" class="submit button" value="ثبت" /></li>
<?php wp_nonce_field( 'updatemyform' ); ?>
<input name="action" type="hidden" id="action" value="updatemyform" />
</form>
</ol>
<?php }

ویرایش شده توسط arash39561
لینک به ارسال

داخل شرط چند مورد کم بود:

global $wpdb;
$table_name = $wpdb->prefix . "mytable";
$DataUpdate = $wpdb->insert( $table_name, array(
'time' => current_time('mysql'),
'name' => $name,
));

لینک به ارسال

برای حالت ایجاکسی این رو جستجو کنید:

$.post / $.get / $.ajax

برای جی کوئری هستن.

برای امنیت nonce هم مناسبه. ولی استفاده از prepare در خود کوئری ها هم خوبه.

لینک به ارسال

من یه جا همچین چیزی دیدم.به این صورت می تونه باشه؟؟


jQuery('#formman').submit(ajaxSubmit);
function ajaxSubmit(){
var formman = jQuery(this).serialize();
jQuery.ajax({
type:"post",
url: "/wp-admin/admin-ajax.php",
data: formman,
success:function(data){
jQuery("#pm-man").html(data);
}
});
return false;
}

nonce رو بلد نیستم به کار ببرم تو کدها اگر کدهای آماده روی کدهای بالای بذارید ممنون می شم.

لینک به ارسال

اینجا رو ببینید:


http://www.prelovac.com/vladimir/improving-security-in-wordpress-plugins-using-nonces/
http://manchumahara.com/2009/11/08/send-ajax-request-in-wordpress-using-wpnonce/

لینک به ارسال

کدهای مثال که کامل بود. دقیق چی رو متوجه نشدید؟

اصلا تا بحال با این متدها کار کردید؟

با توابع وردپرس برنامه نویسی کردید؟

چون باید مفهوم ها رو هم بدونید وگرنه براتون سخت میشه

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...