صدور خطا در ارسال اطلاعات به دیتابیس

سوال

با سلام

کدهای ارسال اطلاعات به دیتابیس (درسهای 1 تا 5 ارتباط با سرور آنلاین در B4A را دقیقا انجام دادم ولی متاسفانه علیرغم True شدن متغیر job.Success ، پیام خطای زیر صادر میشه و در msgbox نمایش داده میشه لطفا راهنمایی کنین

<html>
	<body>
		<script type="text/javascript" src="/aes.js" ></script>
		<script>function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f
			<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("5b2f1a70c727f9bdb810bdce8130c8dc");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/"; location.href="http://psps.gigfa.com/index.php/?i=1";
			</script>
			<noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript>
		</body>
	</html>

 

با تشکر

در حال بررسی 0
2018-10-15T12:34:51+03:30 8 پاسخ کاربر تازه 0

پاسخ ها ( 8 )

    2
    2018-10-15T22:57:40+03:30

    سلام.

    دوست عزیز، کدهای PHP و بیسیکتو هم بفرست ببینم چی نوشتی.

    اینجوری نمیتونم کمکت کنم.

    1
    2018-10-16T09:41:22+03:30

    با سلام و ممنون از توجهتون

    کد بیسیکم اینه:

    Sub Process_Globals
    
    End Sub
    
    Sub Globals
    	Private txtUname As EditText
    	Private txtUpass As EditText
    	Private btnLogin As Button
    	Dim ht As HttpJob	
    End Sub
    
    Sub Activity_Create(FirstTime As Boolean)
    	Activity.LoadLayout("reg")
    	ht.Initialize("reg",Me)
    End Sub
    
    Sub Jobdone (job As HttpJob)
    	If job.Success = True Then
    		Msgbox(job.GetString,"Success")
    	Else
    		ToastMessageShow("خطا در برقراری اتصال" , False)
    	End If
    End Sub
    
    Sub Activity_Resume
    
    End Sub
    
    Sub Activity_Pause (UserClosed As Boolean)
    
    End Sub
    
    Sub btnLogin_Click
    	Dim send As String
    	send = "username="&txtUname.Text&"&password="&txtUpass.Text
    	ht.PostString("http://psps.gigfa.com/reg.php",send)
    End Sub

    و کدهای php برای رجیستر:

    <?php
    	$conn = mysql_connect('sql7.freemysqlhosting.net:3306' , 'sql7261134' , 'hbHCKyUBnS');
    	mysql_select_db('sql7261134',$conn);
    	mysql_set_charset('utf8');
    
    	$username=$_POST['username'];
    	$password=$_POST['password'];
    	
    	if($conn){
    		$result = "INSERT INTO b4a_register(username,password) VALUES('$username','$password')";
    		if(mysql_query($result)){	
    			echo "Done";	
    		}else{echo "Error";}
    	}
     ?>

    البته برای تست کانکشن از کد زیر استفاده کردم که جواب داد و ok بود:

    <?php
    $conn = mysql_connect('sql7.freemysqlhosting.net:3306' , 'sql7261134' , 'hbHCKyUBnS');
     if ($conn){
    	echo "Connect";
    }
    ?>

    با تشکر از وقتی که میذارین.

     

    0
    2018-10-16T11:14:39+03:30
    این پاسخ ویرایش شد.

    راستی فراموش کردم بگم که اگه توی فایل PHP مقادیر متغیرها رو خودمون وارد کنیم بدون مشکل در دیتابیس درج میشه. مثلا :

    $username=”A”;
    $password=”B”;

     

    1
    2018-10-16T18:10:24+03:30

    سلام

    کدها این طور که معلومه مشکلی نداره، شما در فایل reg.php هر جا نوشته اید، mysql به mysqli تغییر بدید.

    mysql منقضی شده و mysqli جایگزینش شده

    همچنین به جای استفاده از کتابخانه httputils2 از OkHttp استفاده کنید.

     

    0
    2018-10-16T20:04:26+03:30

    به دلیل استفاده از هاست رایگان نیست؟

      0
      2018-10-17T00:22:20+03:30

      اگه روی xampp server جواب میده و روی هاست رایگانت جواب نمیده، مشکل از هاست هست.

        0
        2018-10-17T07:22:07+03:30

        سلام صبح بخیر

        روی سیستمم wamp دارم که هر کاری کردم نتونستم بهش کانکت بشم حتی… بر عکس هاست که براحتی به دیتابیسش کانکت شدم

        0
        2018-10-17T08:50:09+03:30

        روی WAMP SERVER هم همین جوره منتهی این بار job.Success دیگه true نمیشه

    0
    2018-10-17T09:20:10+03:30

    ضمنا با استفاده از OkHttpUtils2 هم مشکل پابرجاست

    1
    2018-10-17T09:30:41+03:30

    سلام، من الان کدهای PHP سمت سرورتون رو نگاه کردم، سه تا اشکال داره

    متغیر conn$ که اطلاعات ارتباط با دیتابیس داخلش هست، باید mysqli_select_db, mysqli_set_charset,mysqli_query اضافه کنید، کدهای سمت سرور میشه به شکل زیر:

    <?php
    	$conn = mysqli_connect('localhost' , 'beporsam_b123' , '123456789');
    	mysqli_select_db($conn,'beporsam_b123');
    	mysqli_set_charset($conn,'utf8');
    
    	$username=$_POST['username'];
    	$password=$_POST['password'];
    	
    	if($conn){
    		$result = "INSERT INTO b4a_register(username,password) VALUES('$username','$password')";
    		if(mysqli_query($conn,$result)){	
    			echo "Done";	
    		}else
    		{
    		    echo "Error";
    		    
    		}
    	}
     ?>

    اطلاعات دیتابیس خودتون رو جایگزین کنید

    اگه وقتی فایل reg.php رو در هاست اجرا میکردید و خطایی نمی گرفتید، به این دلیل بوده که از هاست رایگان استفاده میکردید.

    من پروژه شما رو اجرا کردم و بدون خطا، برنامه اجرا شد.

    قبلا هم به دوستان گفته بودیم که از هاست رایگان استفاده نکنند، حال ممکنه خطای برنامه شما به خاطر اجرا در هاست رایگان باشه(که احتمالش خیلی زیاده)

    موفق باشید.

      0
      2018-10-17T09:47:14+03:30

      با سلام

      متشکرم از وقتی که گذاشتین. با استفاده از wamp  و سرور لوکال و mysqli و تعویض کتابخانه باز هم مشکل سرجاشه واقعا گیج شدم.

    1
    2018-10-18T01:14:07+03:30

    سلام.

    شما اینارو داشته باش:

    <?php
        
        $servername = "localhost";
        $username = "root";
        $password = "";
        $dbname = "b4shop";
    
        $smail = $_POST['mail'];
        $spass = md5($_POST['password']) ;
        $stype = $_POST['stypee'];
    
     
     
    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    
    $sql = "INSERT INTO user (mail,password) VALUES ('$smail','$spass')";
    
    if ($conn->query($sql) === TRUE) {
        echo "Registration successful";
    } else {
        echo "Registration Error!!";
    }
     
    }
    
    }
    
     $conn->close();
        
    ?>

    از اینا استفاده کن ببین حل میشه

    با این خط هم دیتاتو بفرست:

    ht_send_data.PostString("http://192.168.1.6/insert_member.php","mail="&txt_mail.Text&"&password="&txt_pass.Text)

    حالا پارامترهای ارسالی شاید جا به جا باشن.

    خودت درستشون کن

ارسال یک پاسخ