PDA

View Full Version : سوال: مشکل در تبدیل کد php به asp.net



mohammad87
یک شنبه 26 اردیبهشت 1389, 09:31 صبح
سلام به همه حرفه ای ها
کد زیر قسمتی از یک فایل php هست . همونطوری که می بینید توی صفحه html اومده از کد <?php استفاده کرده ... حالا من می خوام عین همین کد یعنی توی صفحه html توی asp.net استفاده کنم .قسمتی رو که استفاده احتیاج دارم بولد کردم.از کد زیر چطوری می تونم توی asp.net استفاده کنم (توی html قسمت کلاینت نه سرور) ؟؟؟؟؟؟؟


<!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>Untitled Document</title>
<script type="text/javascript">

function $(id){return document.getElementById(id)}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}


function sendToServer()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}

url='add.php?name='+encodeURIComponent($('name').v alue)+'&family='+encodeURIComponent($('family').value)+'&code='+$('code').value;


xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.send(null);

}

function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
if (xmlHttp.responseText=='1')
{
add($('name').value,$('family').value,$('code').va lue);
}
else{
alert("Error in connect to server");

}

}
}

function add(name,family,code)
{
tbody=document.getElementById('students').getEleme ntsByTagName('TBODY')[0];
var row=document.createElement('TR');
row.setAttribute("id","tr",name);
var td1=document.createElement('TD');
td1.innerHTML=name;
var td2=document.createElement('TD');
td2.innerHTML=family;
var td3=document.createElement('TD');
td3.innerHTML=code;
row.appendChild(td1);
row.appendChild(td2);
row.appendChild(td3);
tbody.appendChild(row);

}
</script>
</head>

<body>

<table id='students' width="200" border="1" dir="rtl">
<tr>
<td>نام </td>
<td>نام خانوادگی</td>
<td>شماره دانشجو</td>
</tr>
<?php
$con=mysql_connect('localhost','root','');
$db=mysql_select_db('ajax',$con);
mysql_query("set names 'utf8'");
$q="SELECT * FROM `students` ";
$query=mysql_query($q);
while($row=mysql_fetch_assoc($query))
{
$name=$row['name'];
$family=$row['family'];
$code=$row['code'];
echo " <tr>
<td>$name </td>
<td>$family</td>
<td>$code</td>
</tr>";
}
?>
</table>

<table width="400" border="0">
<tr>
<td>نام</td>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<td> نام خانوادگی</td>
<td><input type="text" name="family" /></td>
</tr>
<tr>
<td>شماره دانشجویی</td>
<td><input type="text" name="code" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="button" value="ارسال" onclick="sendToServer()"/></td>
</tr>
</table>

</body>
</html>

hofa_7
یک شنبه 26 اردیبهشت 1389, 17:07 عصر
شما توی asp.net احتیاجی به این نوع کد نویسی ندارید !
قسمت بالای صفحه که ajax نوشته شده و شما می تونی با قرار دادن یه scriptmanager و یه updatepanel انجامش بدی .
قسمت بعدش هم که در واقع bold کردیش همون GridView در Asp.net هست . کافیه یه گرید بندازی توی updatepanel و براش یه SqlDataSource تعیین کنید بقیش دیگه درست می شه

mohammad87
یک شنبه 26 اردیبهشت 1389, 19:28 عصر
ممنون از اینکه جواب دادی ولی من نمی خوام از updatepanel استفاده کنم ... آخه حجم وبسایت رو خیلی بالا می بره .(ajax توی asp.net حجمش بالایه) با اون کد بالا حجم وب خیلی پایین میاد.
اگه از گراید ویو استفاده کنم دیگه نمی تونم اینطور آژاکس باهاش بنویسم؟

کسی نظر دیگه ای داره؟

Alireza_Salehi
یک شنبه 26 اردیبهشت 1389, 23:27 عصر
همه کد ها رو به ASP.NET منتقل کن. ولی اون قسمت pHP رو بایددر قسمت کدهای صفحه بنویسی و بعد با متد های سمت کلاینت ارتباط برقرار کنی، الان دیر وقته فردا برات یک مثال میذارم.

mohammad87
دوشنبه 27 اردیبهشت 1389, 14:36 عصر
ممنون arsp اگه یک مثال بزاری. یا همون کد بالا رو تبدیل کنی عالی میشه.