سوال در استفاده از متد Get

amirrahimi69

کاربر عضو
سلام

من توی آدرس زیر از فرم تماس با ما استفاده کردم ، همون فرمی که اطلاعات رو به ایمیل می فرسته .



چطور میشه کاری کرد وقتی کاربر فرم رو پر کرد و دکمه ارسال رو زد از طریق متد Get و لینک زیر یک اس ام اس براش فرستاده بشه ؟

با فرض اینکه در قسمت موضوع شماره موبایل وارد کنه ..



ممنون میشم پاسخ بدید

 

Mohammad

مدیر انجمن
پرسنل مدیریت
کد:
$sendsms = @file_get_contents(" Http://www.sms.ir/APISend.aspx?Username=$UserName&Password=$password &From=$FromNumber&To=$ToNumber&Text=$Text");
 

amirrahimi69

کاربر عضو
تشکر فراوان از شما

فقط یک سوال دیگه

چکار باید کرد که وقتی کاربر توی فرم و توی قسمت موضوع شماره تماس وارد کرد هر مقداری که وارد کرده باشه توی لینک و به جای" ToNumber" قرار بگیره ؟؟؟

 

farsadf

کاربر عضو
سلام دوست عزیز ابتدا سطح مهارت های خودتون رو در php بگید تا ما بر حسب مهارت های شما کمک کنیم

ساده ترین و فکر کنم تنها روش اینکار تعریف متغیر هست که در php به این صورت متغییر ها نوشته میشن :


کد:
$namemoteghayer = 'value';
نام متغیر case sensitive هست

برای مثال شما


کد:
$toSender = $_GET['sth'];
sth نام قسمت ارسال کننده هست و GET بسته به method فرم میتونه به POST تبدیل بشه.

 

amirrahimi69

کاربر عضو
تشکر از شما دوست گرامی ، من در سطح متوسط php رو بلدم

توی صفحه مذکور از کد زیر استفاده کردم برای دریافت پیام کاربران :


کد:
<?php

session_start();

if(isset($_POST['submit'])) {

    if(!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['message']) && !empty($_POST['code']) && !empty($_POST['subject'])) {

        if($_POST['code'] == $_SESSION['rand_code']) {

            // send email

            $accept = "پیغام شما با موفقیت ارسال شد. با تشکر";
            $to = "amirrahimi69@yahoo.com";
            $subject = $_POST['subject'];
            $from = $_POST['email'];
            $user_message = $_POST['message'];

            $body = "\n".
            "نام: $name\n".
            "ایمیل: $from \n".
            "توضیحات: \n ".
            "$user_message\n".

            $headers = "From: $from \r\n";
            $headers .= "Reply-To: $from \r\n";

            mail($to, $subject, $body, $headers);
        } else {

            $error = "کد امنیتی را اشتباه وارد کرده اید! دوباره امتحان کنید";

        }

    } else {

        $error = "لطفا تمامی فیلد ها را تکمیل نمایید.";

    }

}

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>تماس با ما</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="main">
<div class="content">
<h2>ارتباط با ما</h2> 
<?php if(!empty($error)) echo '<div class="error">'.$error.'</div>'; ?>
<?php if(!empty($accept)) echo '<div class="ok">'.$accept.'</div>'; ?>
    <p>برای تماس با ما میتوانید از فرم زیر استفاده نمایید</p>
    <p>
    <div class="forms">                        
    <form action="" method="post">
    <label for="username"> نام : </label>
    <input type="text" id="name" class="form" value="" name="name">
    <br/><br/><br/>
    <label for="email"> ایمیل : </label>
    <input type="text" id="email" value="" class="form-ltr" name="email">
    <br/><br/><br/>
    <label for="sub"> موضوع : </label>
    <input type="text" id="sub" value="" class="form" name="subject">
    <br/><br/><br/>
    <label for="mess"> پیام شما : </label>
    <textarea class="form" id="mess" rows="7" name="message"></textarea>
    <br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
    <label for="Email"> کد امنیتی : </label>
    <image src="captcha.php" />
    <br/><br/><br/>
    <label for="code"> وارد کنید : </label>
    <input type="text" value="" id="code" class="form-ltr" name="code">
    <br/><br/><br/>
    <input type="submit" name="submit" value="  ارسال  ">
    </form>
    </div>
    </p>
    </div>
    <div class="clear"></div>
    <div id="copyright"><a href="http://www.copyiran.ir">سامانه کپیران</a></div>
</div>
</body></html>
و می خوام در این صفحه از get بالا استفاده کنم .

ممنون از راهنمایی تون

 

farsadf

کاربر عضو
شما میخواین بدونید کاربر توی موضوع شماره وارد کرده اگه اینطوره برای شروع بهتره بگم اصلا و ابدا کار درستی نیست چون استفاده نمیشه ولی خوب :


کد:
if(isset($_POST['subject']) && is_numeric($_POST['subject']) && strlen($_POST['subject']) == '11') { // Do Something
}
اون عدد 11 مربوط به تعداد حروف هست که برای شماره ی موبایل های ایران 11 عدد میباشد.

 

amirrahimi69

کاربر عضو
با تشکر اما شما منظور من رو متوجه نشدید

من به کاربران گفتم در قسمت موضوع شماره همراه وارد کنند و من میخوام زمانی که کاربر فرم تماس باما رو پر کرد و و دکمه ارسال رو زد، از طریق متد get لینکی رو که سرویس دهنده پنل اس ام اس به من داده اجرا بشه و پیام " درخواست شما با موفقیت ثبت شد " برای اون ارسال بشه .

دو مشکل هست:

1- اینکه چطور اون متد get در صفحه php ای که در بالا کدش رو گذاشتم استفاده کنم که به درستی اجرا بشه .

2- چه مقداری رو در لینک قرار بدم که کاربر هر شماره همراهی وارد کرد درون لینک جای گذاری بشه .

ممنون و متشکرم

 

farsadf

کاربر عضو
بنا بر حرف آقا محمد :


کد:
$sendsms = @file_get_contents(" Http://www.sms.ir/APISend.aspx?Username=$UserName&Password=$password &From=$FromNumber&To=$ToNumber&Text=$Text");
هر کدوم از این ها متغییر هست شما میتونید برای این که متغیر ها خونده بشن ( در داخل یه تابع بدون نیاز به '.$name.' از دابل کوتیشن استفاده کنید و هر کدون از اونایی که آقا محمد با علامت $ نوشته یه متغییر هست و شما باید اونا رو با فرم ست کنید مثلا آدرس موبایل که $ToNumber هست باید این جوری باشه :


کد:
$ToNumber = $_POST['subject'];
POST بنا به method فرم تماس میتونه به GET هم تبدیل بشه

موفق باشید.

 
بالا