PDA

View Full Version : سوال: نمایش اطلاعات در تکست باکس (Text box)



volkswagen
یک شنبه 20 مهر 1399, 14:30 عصر
سلام...
من در کدهای html با دستور input ی دونه تکس باکس ساختم...


<input type="text" name="page" value="1" >


حالا می خوام با این دستور ، یک مقداری رو بهش بدم ، ولی مساله اینجاست که php میاد ی دونه text جدید میسازه و به اون مقدار میده! .... میخوام به همونی که از قبل ساختم مقدار دهی کنه؛


echo "Result:<input type=’text’ name='page' value='159'/>";



روش صحیح مقدار دهی به تکس باکس که از قبل ساختم ، چجوری هست ؟ بی زحمت راهنمایی کنین ، تشکر

plague
دوشنبه 21 مهر 1399, 14:18 عصر
خب شما که یدونه html ساختی دیگه اصلا برا چی با php داری همون رو دوباره میزنی ؟
اگه value رو توی php داری و میخای بزاری تو تگ اینجوری بنویس


<input type="text" name="page" value="<?php echo $number ?>" >

volkswagen
سه شنبه 22 مهر 1399, 12:20 عصر
خب شما که یدونه html ساختی دیگه اصلا برا چی با php داری همون رو دوباره میزنی ؟
اگه value رو توی php داری و میخای بزاری تو تگ اینجوری بنویس


<input type="text" name="page" value="<?php echo $number ?>" >



متوجه سوال من نشدین ، من قبلا با استفاده از html یک کنترل ساختم ، الان با php صرفا می خوام بهش مقداردهی کنم...نمی دونم شدنی هست یا نه ، ولی سرچ کردم ، ظاهرا با جاوا اسکریپت باید اینکارو انجام بدم...

قطعه کد شما باعث میشه یک کنترل جدید ساخته بشه...نه اینکه به کنترل قبلی که من ساختم ، مقداردهی شه ، نمی دونم منظور منو متوجه می شین یا نه

plague
چهارشنبه 23 مهر 1399, 09:45 صبح
دقت کن به کد من
تگ php توی value باز شده
این همون کنترلر html خودت هستش فقط value رو با php دادم


ناراحت نشی دوست عزیز ولی این سوالت خیلی پیش پا افتاده تر و مبتدی تر از اینه که کسی متوجه نشه

شما تگ html رو مینویسی و value اون تگ رو با php پر میکنی
مثل نمونه ای که دادم

volkswagen
چهارشنبه 23 مهر 1399, 12:43 عصر
تشکر ، خب این tag پی اچ پی قراره در کدهای html قراره بگیره؟ درسته؟
حالا اگه من بخوام در حین اجرای برنامه مقدار اون رو مدام تغییر بدم ، راه حل چیه؟

الان من تگ input رو نوشتم ، حالا می خوام با کد شما یعنی این:


<input type="text" name="page" value="<?php echo $number ?>" >


بهش ی مقدار بدم ، نتیجه این میشه که ی دونه textbox جدید ساخت میشه و به قبلی مقدار دهی نمیشه...!

عکس می گیرم که متوجه منظور من بشین
https://uupload.ir/files/2u8n_text.jpg


اون تکس باکس که با رنگ نارنجی مشخص کردم ، با این کد اچ تی ام ال ایجاد شده:

<input type="text" name="page" value="1" >


حالا خواستم با این کد بهش مقدار بدم:


<input type="text" name="page" value="<?php echo $number ?>" >



بجای اینکه مقدار بگیره ، اون تکس باکس که با رنگ قرمز مشخص کردم ، ایجاد میشه!

NimaGP
چهارشنبه 23 مهر 1399, 21:04 عصر
فکر می کنم با id عنصر html بتونید مقدار دهی کنید بهش و همونطور که گفتید استفاده از جاوا اسکریپت هم یه راه هست

volkswagen
چهارشنبه 23 مهر 1399, 21:24 عصر
فکر می کنم با id عنصر html بتونید مقدار دهی کنید بهش و همونطور که گفتید استفاده از جاوا اسکریپت هم یه راه هست

مرسی .با id هم مجدد ی تکست باکس جدید میسازه

plague
پنج شنبه 24 مهر 1399, 09:40 صبح
اینجوری کار نمیکنه که شما یدونه تگ ایجاد کنی بعد خط بعدی بهش مقدار بدی
شما باید توی یک خط تگ رو ایجاد کنی و بهش مقدار بدی
من نمیفهمم اصلا چرا داری اون تگ اول رو میزاری ؟!! کلا 1 دونه تگ باید بنویسی شما داری 2 تا تگ مینویسی بعد میگی چرا 2 تا شدن

اینکه میگی میخای بعدا مقدارش رو تغییر بدی مرتب که وب اینجوری کار نمیکنه
کدای php توی سرور اجرا میشن و نتیجشون میاد تو مرورگر کاربر میشینه به عبارت دیگه بعد از لود صفحه شما نمیتونی کد php اجرا کنی تو صفحه

اونجا دیگه باید javascript استفاده کنی بشین یه دوره آموزش jquery ببین

volkswagen
پنج شنبه 24 مهر 1399, 13:19 عصر
خب من میخوام کنترل ها رو از قبل بسازم و بعد بهشون مقدار بدم.

اوکی مرسی

NimaGP
پنج شنبه 24 مهر 1399, 21:20 عصر
با این کد می تونید انجامش بدید
لازم به ذکر هست که باید برای کار کردنش یه متغیر به اسم value با مقداری که می خواید توی input نمایش داده بشه توی کد php ایجاد کنید یا اینکه عبارت $value رو با مقدار مد نظر جایگزین کنید همچنین عبارت id رو هم باید با id عنصر html مد نظرتون جایگزین کنید و جاوا اسکریپت مرورگر هم فعال باشه


<?php
echo "<script>var element = document.getElementById('id');
//اختصاص مقدار به عنصر مورد نظر
element.setAttribute('value','$value');";
؟>
در ضمن همونطور که جناب plague گفتن, برای اینکه کد php بدون ریفرش کردن صفحه مرورگر اجرا بشه باید از ajax استفاده کنید که اگه می خواید کار باهاش رو یاد بگیرید این لینک (https://sabzdanesh.com/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-ajax-%D8%AF%D8%B1-php/) کمکتون می کنه

volkswagen
جمعه 25 مهر 1399, 12:53 عصر
مرسی


$value=55;
echo "<script>var element = document.getElementById('page');

//اختصاص مقدار به عنصر مورد نظر
element.setAttribute('value','$value');";


کد رو به شکل بالا تغییر دادم ولی مقدار تکس باکس تغییر نمی کنه ، کجا ایراد داره؟

tolouei-mahd
سه شنبه 20 آبان 1399, 12:43 عصر
درود. برای اینکه این کار رو بخواید انجام بدید باید ما اول بدونیم این اطلاعاتی که میخواید توی این فیلد قرار بدید از کجا قراره خونده بشه؟ از هر جایی که اطلاعات رو گرفتید میتونید با کد زیر اون رو تغییرش بدید
document.getElementById("myText").value = "Johnny Bravo";
در نظر داشته باشید که برای اینکه این کد انجام بشه باید آی دی فیلد رو به myText تغییر بدید. میشه به این صورت
<input type="text" id="myText" name="some_name">