Bayağı bir kırptım ama yolu gösterir diye düşünüyorum
/* kayitdogrulama.php */
session_start();
if(
isset($_POST['telnoonay']) && strlen(trim($_POST['telnoonay'])) == 10 &&
isset($_POST['username']) && trim($_POST['username']) != '' &&
isset($_POST['password']) && trim($_POST['password']) != ''
){
$_SESSION['ykpasswd'] = $_POST['password'];
$_SESSION['ykuname'] = $_POST['username'];
$_SESSION['yktel'] = $_POST['telnoonay'];
$smsuser = 'smsusername';
$smspasswd = 'smspasswd';
/// Kullanıcı var mı? varsa kayıt etmeyeceğiz. Buradaki kodu size bırakıyorum
if(!$kayitli){
$_SESSION['ccode'] = rand(100000, 999999);
$url= 'https://api.netgsm.com.tr/sms/send/get/?usercode='.$smsuser
.'&password='.$smspasswd
.'&gsmno='.$tel
.'&message='.$_SESSION['ccode'].'&msgheader=Dogrulama%20Kodunuz';
// Buradaki değerler demo amaçlı. Kullandığınız servis json formatında cevap vermiyor olabilir
$dk = json_parse(file_get_contents($url), true);
if($dk['status'] == 1){
// Gönderilen şifrenin girileceği form
header("location: smsdogrula.php");
}else{
header("location: index.php?hata=SMS gönderilemedi");
}
}else{
session_destroy();
header("location: giris.php?hata=kayitliuye");
}
}else{
session_destroy();
}
/* --------------------------------------- */
// smsdogula.php
session_start();
$hatakodu = 'koyok';
if(isset($_POST['kod']) && strlen(trim($_POST['kod'])) == 6){
if($_POST['kod'] == $_SESSION['ccode']){
/* Kişi telefonu doğruladı kayıdı yapıyoruz */
}else{
$hatakodu = 'kodyanlis';
}
}
// Bir hata var. aynı sayfay geri gönderiyoruz
header("location: smsdogrula.php?hatakodu=".$hatakodu);