View Full Version : گذاشتن پارامترهای ورودی در فرم های موجود در صفحه
imanEsmaeili
دوشنبه 31 خرداد 1389, 13:35 عصر
با سلام خدمت دوستان عزیز
من میخام یه تعداد اطلاعات رو از شی request.getParemeter()بخونم و در عناصر موجود در فرم موجود در صفحه جایگذاری کنم تا برای ویرایش آماده بشه اما وقتی میخام مثلا با کد
<%= request.getParameter("name");
پارامتر ورودی رو بخونم و در مثلا textboxقرار بدم فقط تا اولین space در textbox قرار میگیره اما مطمئنم که پارامتر بصورت کامل خونده میشه ولی وقتی میخاد تو textboxقراربگیر ناقص قرارمیگیره
امیدوارم منظورمو بطور واضح فمیده باشید
از دوستان ممنون میشم اگه منو کمک کنن
behrooj
سه شنبه 01 تیر 1389, 15:54 عصر
میشه لطفا مقداری از کد صفحه JSP رو قرار بدید؟
برای آزمون هم تست کنید ببینید با همون کد آیا مقدار مورد نظر در خارج از value در textbox درست نمایش داده میشه؟
imanEsmaeili
چهارشنبه 02 تیر 1389, 09:53 صبح
با سلام
ممنون از راهنمایی تون آقای نوبخت
بله حتما
من ابتدا با کد زیر تمام ستونهای لازم رو ر اساس یک پارامتر به نام productIDاز پایگاه بازیابی می کنم
<%
ProductsT productsT=new ProductsT();
productsT.setProductID(request.getParameter("productID"));
if(productsT.getProductID()!=null){
String sql="SELECT p.`productID`, p.`proID`, p.`productType`, p.`name`, p.`author`, p.`publisher`," +
"p.`publishYear`, p.`price`, p.`isNew`, p.`barcodeNumber`, p.`quantity` FROM productst p WHERE p.productID=? ";
Connection connection=new createConnection().getConnection();
try{
PreparedStatement preparedStatement=connection.prepareStatement(sql) ;
preparedStatement.setString(1, productsT.getProductID());
ResultSet resultSet=preparedStatement.executeQuery();
while(resultSet.next()){
productsT.setProductsT(resultSet.getString(1), resultSet.getString(2), resultSet.getString(3), resultSet.getString(4),
resultSet.getString(5), resultSet.getString(6),resultSet.getString(7), resultSet.getInt(8), resultSet.getBoolean(9),
resultSet.getString(10), resultSet.getByte(11),(short)0);
}
resultSet.close();
preparedStatement.close();
connection.close();
}catch(SQLException ex){ out.print(ex.getMessage()); }
}
%>
بعد با کد زیر سعی می کنم مقادیر بازیابی شده را در عناصر موجود در قرم موجود در صفحه جهت ویرایش قرار بدم
<form name="form1" method="post" action="../editProductAction?productID=<%= request.getParameter("productID") %>">
<table width="100%" border="0" class="tableHeader" bgcolor="#CCFFCC">
<tr>
<th colspan="2">فرم ویرایش اطلاعات محصول</th>
</tr>
<!--<input type="hidden" name="productID" id="productID" value=<%=productsT.getProductID() %> />-->
<tr>
<td>عنوان محصول:</td>
<td><span id="sprytextfield1">
<input name="name" type="text" id="name" size="70" value=<%=productsT.getName() %>/>
<span class="textfieldRequiredMsg">A value is required.</span></span></td>
</tr>
<tr>
<td>مولف:</td>
<td><span id="sprytextfield2">
<input name="author" type="text" id="author" size="50" value=<%=productsT.getAuthor() %>/>
</span></td>
</tr>
<tr>
<td>ناشر:</td>
<td><span id="sprytextfield3">
<label>
<input name="publisher" type="text" id="publisher" size="50" value=<%=productsT.getPublisher() %>/>
</label>
</span></td>
</tr>
<tr>
<td>تخصص:</td>
<td><proficienciesLits:proficienciesCombo selectedItem="<%=productsT.getProID() %>"/></td>
</tr>
<tr>
<td>نوع محصول:</td>
<td><label>
<select name="productType" size="1" id="productType">
<option value="PDF" <% if(productsT.getProductType()=="PDF") out.print("selected"); %>>PDF</option>
<option value="CHM" <% if(productsT.getProductType()=="CHM") out.print("selected"); %>>CHM</option>
<option value="ISILO" <% if(productsT.getProductType()=="ISILO") out.print("selected"); %>>ISILO</option>
<option value="video Technique" <% if(productsT.getProductType()=="video Technique") out.print("selected"); %>>video Technique</option>
<option value="Book" <% if(productsT.getProductType()=="Book") out.print("selected"); %>>Book</option>
</select>
</label></td>
</tr>
<tr>
<td>سال انتشار:</td>
<td><span id="sprytextfield4">
<label>
<input type="text" name="publishYear" id="publishYear" value=<%=productsT.getPublishYear() %>/>
</label>
<span class="textfieldInvalidFormatMsg">Invalid format.</span></span></td>
</tr>
<tr>
<td>قیمت:</td>
<td><span id="sprytextfield5">
<label>
<input type="text" name="price" id="price" value="0" value=<%=productsT.getPrice() %>/>
</label>
<span class="textfieldRequiredMsg">A value is required.</span><span class="textfieldInvalidFormatMsg">Invalid format.</span><span class="textfieldMinValueMsg">The entered value is less than the minimum required.</span></span></td>
</tr>
<tr>
<td>جدید است؟</td>
<td><label>
<input type="checkbox" name="isNew" id="isNew" <% if(productsT.isNewB()) out.print("selected"); %>/>
</label></td>
</tr>
<tr>
<td>شماره بارکد:</td>
<td><label>
<input type="text" name="barcodeNumber" id="barcodeNumber" value=<%=productsT.getBarcodeNumber() %>/>
</label></td>
</tr>
<tr>
<td>تعداد:</td>
<td><label>
<input type="text" name="quantity" id="quantity" value=<%=productsT.getQuantity() %>>
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="button" id="button" value="ذخیره">
<input type="reset" name="button2" id="button2" value="پاک کردن فرم">
</td>
</tr>
</table>
</form>
اما متاسفانه مقادیر بصورت ناقص در عناصر قرارمی گیرند ولی وقتی مثلا یکی از مقادر بازیابی شده را در یک سطر از جدول چاپ می کنک کامل هستش و هیچ نقص نداره
behrooj
چهارشنبه 02 تیر 1389, 14:14 عصر
رشتهای که قراره در مقدار value نمایش داده بشه باید به شکل استاندارد XML بین دو کوتیشون(") قرار داشته باشه:
<input name="publisher" type="text" id="publisher" size="50" value="<%=productsT.getPublisher()%>" />دلیل این که ناقص نمایش داده میشه این که بعد از اولین فاصله کلمهی بعدی به عنوان یک صفت جدید برای تگ input توسط مرورگر فرض میشه.
پیشنهاد میکنم کد لایهی منطق رو از JSP خارج کنید.
imanEsmaeili
پنج شنبه 03 تیر 1389, 14:16 عصر
بسیار از راهنمایی تون ممنونم آقای نوبخت
تشکر میکنم، مشکلم حل شد
بازم ممنون
alipishroo
دوشنبه 09 اسفند 1389, 11:40 صبح
سلام
دوستان من مراحل تشخیص اینکه ورودی کد هکه یا ورودی عادی رو میخوام
عنوان پایان نامم هست
تست معتبر سازی ورودی کاربران در نرم افزارهای تحت وب
لطفا مطالب مرتبط اگه دارید برام بفرستید
متشکرم
ali_heidarifard@yahoo.com
منتظر الطاف شما دوستان هستم
javaphantom
دوشنبه 09 اسفند 1389, 22:21 عصر
سلام
دوستان من مراحل تشخیص اینکه ورودی کد هکه یا ورودی عادی رو میخوام
عنوان پایان نامم هست
تست معتبر سازی ورودی کاربران در نرم افزارهای تحت وب
لطفا مطالب مرتبط اگه دارید برام بفرستید
متشکرم
ali_heidarifard@yahoo.com
منتظر الطاف شما دوستان هستم
واضحتر توضیح بده
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.