PDA

View Full Version : نمایش اطلاعات از دیتابیس



mamadco
شنبه 08 فروردین 1394, 21:30 عصر
سلام دوستان میدونم آموزشا تو انجمن هست ولی هر کاری کردم نتونستم نشون بدم ، میخوام اطلاعات دیتابیس رو با توجه به فرمی که اطلاعات رو ارسال می کنه نمایش بده :

<?php
$db_host = "localhost";
$db_name = "dbs";
$db_user = "root";
$db_pass = "";
$db_table = "test";
?>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<style>
#show{
border :1px dashed #ccc;
float: left;
height:100px;
width:200px;
}
#form{
float:left;
}
</style>
</head>



<div id="form">
<form name="sbm" method="post" >
<textarea name="test" ></textarea><br />
<input type="submit" name="sbm" value="ارسال" />
</form>
</div>
<div id="show">
<?php

?>
</div>
<?php
if(@$_POST["sbm"]){
mysql_connect("$db_host", "$db_user", "$db_pass")or die("error db");
mysql_select_db($db_name) or die ("error to select db name ");
$test = $_POST["test"];
$sql="INSERT INTO $db_table(name)VALUES('$test')";
$result = mysql_query($sql);
if($result){
echo "ok";
}
else{
echo "cant send data";
}
mysql_close();
}


?>
الان فرمی که ساختم اطلاعات رو وارد دیتابیس میکنه ، ولی نمیدونم چطوری اطلاعتش رو تو خود این صفحه به نمایش بزارم . آیا لازمه که دوباره دستورات ارتباط با پایگاه رو بنویسم یا نه ؟
اگه میشه واسم تکمیلش کنید ( یه div ایجاد کردم با اسم show اگه میشه توی اون) تا بتونم بفهمم مرسی :قلب:

reza_alie
شنبه 08 فروردین 1394, 22:20 عصر
سلام دوستان میدونم آموزشا تو انجمن هست ولی هر کاری کردم نتونستم نشون بدم ، میخوام اطلاعات دیتابیس رو با توجه به فرمی که اطلاعات رو ارسال می کنه نمایش بده :

<?php
$db_host = "localhost";
$db_name = "dbs";
$db_user = "root";
$db_pass = "";
$db_table = "test";
?>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<style>
#show{
border :1px dashed #ccc;
float: left;
height:100px;
width:200px;
}
#form{
float:left;
}
</style>
</head>



<div id="form">
<form name="sbm" method="post" >
<textarea name="test" ></textarea><br />
<input type="submit" name="sbm" value="ارسال" />
</form>
</div>
<div id="show">
<?php

?>
</div>
<?php
if(@$_POST["sbm"]){
mysql_connect("$db_host", "$db_user", "$db_pass")or die("error db");
mysql_select_db($db_name) or die ("error to select db name ");
$test = $_POST["test"];
$sql="INSERT INTO $db_table(name)VALUES('$test')";
$result = mysql_query($sql);
if($result){
echo "ok";
}
else{
echo "cant send data";
}
mysql_close();
}


?>
الان فرمی که ساختم اطلاعات رو وارد دیتابیس میکنه ، ولی نمیدونم چطوری اطلاعتش رو تو خود این صفحه به نمایش بزارم . آیا لازمه که دوباره دستورات ارتباط با پایگاه رو بنویسم یا نه ؟
اگه میشه واسم تکمیلش کنید ( یه div ایجاد کردم با اسم show اگه میشه توی اون) تا بتونم بفهمم مرسی :قلب:
سلام خدمت شما


$query="select * from `test`";
$query_run=mysql_query($query);
while ($row=mysql_fetch_assoc($query_run)) {


echo $row['name'];
echo '<br>';

}

mohamadali1374
شنبه 08 فروردین 1394, 22:33 عصر
سلام

<?php
$db_host = "localhost";
$db_name = "test";
$db_user = "root";
$db_pass = "";
$db_table = "test1";
$conn=mysql_connect("$db_host", "$db_user", "$db_pass")or die("error db");
mysql_select_db($db_name) or die ("error to select db name ");
?><head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<style>
#show{
border :1px dashed #ccc;
float: left;
height:100px;
width:200px;
}
#form{
float:left;
}
</style>
</head>




<div id="form">
<form name="sbm" method="post" >
<textarea name="test" ></textarea>
<input type="submit" name="sbm" value="ارسال" />
</form>
</div>
<div id="show">
<?php
$sql="select * from ".$db_table;
$rec_news1 = mysql_query($sql, $conn) or die(mysql_error());
$result2= mysql_fetch_assoc($rec_news1);

?>


<table width="200" border="1">
<tr>
<td>id</td>
<td>name</td>
</tr>
<?php
$i= mysql_num_rows($rec_news1);
while($i){

?>
<tr>
<td><?php echo $result2['id']; ?></td>
<td><?php echo $result2['name']; ?></td>
</tr>
<?php
$i--;
}

?>
</table>


</div>
<?php
if($_POST["sbm"]){
$test = $_POST["test"];
$sql="INSERT INTO $db_table(name)VALUES('$test')";
$result = mysql_query($sql);
if($result){
echo "ok";
}
else{
echo "cant send data";
}
mysql_close();
}


?>

mamadco
یک شنبه 09 فروردین 1394, 02:02 صبح
مرسی . عزیزان ، اول از همه اینا رو داشته باشید :

<?php
$db_host = "localhost";
$db_name = "mycms";
$db_pass = "";
$db_user = "root";
$db_table = "post";
mysql_connect($db_host,$db_user,$db_pass) or die ("database error");
mysql_select_db($db_name);
?>
<style>
#acrite{
float: right;
height: 300px;
width: 400px;
}
.title
{
height: 50px;
width: 100%;
background: none repeat scroll 0% 0% rgb(204, 204, 204);
border-radius: 5px;
}
.post{
height: 100%;
background: none repeat scroll 0% 0% rgb(204, 204, 204);
margin: 5px 0px;
border-radius: 5px;
}
</style>
<?php
$post_show_quary = "SELECT * FROM $db_table ";
$post_show_quary_run = mysql_query($post_show_quary);
echo("<TABLE BORDER=1 WIDTH=100%>\n");
echo("<TR ALIGN=CENTER VALIGN=MIDDLE BGCOLOR=#CCCCFF>\n");
echo("<TH>Radif</TH><TH>Name</TH><TH>ID</TH>\n");
echo("</TR>\n");
while($row = mysql_fetch_row($post_show_quary_run)){

echo("<TR ALIGN=CENTER VALIGN=MIDDLE BGCOLOR=FFCCCC>\n");
for($i=0;$i<mysql_num_fields($post_show_quary_run);$i++)
{
echo("<TD>$row[$i]</TD>");
}
echo("<TR ALIGN=CENTER VALIGN=MIDDLE BGCOLOR=FFCCCC>\n");
}
("</TABLE>\n");
?>


<form action="index.php" method="post">
<label for="title">عنوان</label><input type="text" name="title" id="title"/>
<textarea name="text"></textarea>
<input type="submit" name="sbm" value="send"/>
<input type="submit" name="delet" value="delete"/>
</form>

<?php
if(isset($_POST["delet"])){
$delet = mysql_query("DELETE FROM $db_table WHERE id=1");
$delet_run = mysql_query($delet);
if($delet_run){
echo "ok";
}
else {
echo "error";
}
}
if(@$_POST["sbm"]){
$title = $_POST["title"];
$post = $_POST["text"];
$quray = "INSERT INTO $db_table(title,text) VALUES ('$title','$post')";
$result = mysql_query($quray);
if($result){
echo "ok";
}
else {
echo "error";
}
mysql_close();
}



?>
وقتی این درستور حذف رکورد اجرا میشه ، sorry نمایش داده میشه در صورتی که دستور کار میکنه ، مشکل از چیه ؟

if(isset($_POST["delet"])){
$delet = mysql_query("DELETE FROM $db_table WHERE id=1");
$delet_run = mysql_query($delet);
if($delet_run){
echo "ok";
}
else {
echo "error";
}
}

Mohammadsgh
یک شنبه 09 فروردین 1394, 03:57 صبح
ببینید id با رکورد 1 دارید؟

mamadco
یک شنبه 09 فروردین 1394, 15:48 عصر
بحث رکوردهای ایدی نیست من هر رکوردی بدم بهش که وجود داشته باشه sorry و echo میکنه در صورتی که با یه رفرش دستور اجرا شده

Mohammadsgh
یک شنبه 09 فروردین 1394, 16:28 عصر
1-تو کدتون نوشتید error نه sorry
2-ببینید درخواست get رو درست میفرستید؟نام و نگارشش رو دقت کنید
ببینید این کد کار میکنه؟


if(isset($_POST["delet"])){
$delet = mysql_query("DELETE FROM $db_table WHERE id=1");
if($delet){
echo "ok";
}
else {
echo "error";
}
}

hamedarian2009
یک شنبه 09 فروردین 1394, 19:27 عصر
if(isset($_POST["delet"])){
$delet = mysql_query("DELETE FROM $db_table WHERE id=1");
$delet_run = mysql_query($delet);
if($delet_run){
echo "ok";
}
else {
echo "error";
}
}




شما دوبار mysql_query رو نوشتی برای همین یکبار رکورد حذف میشه چون اولی درسته اما دومی چون غلطه ارور میده و خطا نمایش داده میشه اینجوری اصلاح کنید


if(isset($_POST["delet"])){
$delet = "DELETE FROM $db_table WHERE id=1";
$delet_run = mysql_query($delet);
if($delet_run){
echo "ok";
}
else {
echo "error";
}
}

mamadco
دوشنبه 10 فروردین 1394, 01:39 صبح
اوه مای خدا ! من اینم نتیجه خنگ بازی خودمه دیگه ، ممنون که دقت کردی آقا حمید ، میگم چطور میتونم کاری کنم که ایدی هر کدومو خودش بگیره و پاک کن ، مثلا جلوی هر کدوم یه فیلد جدید ایجاد کنم واسه دلیت

reza_alie
دوشنبه 10 فروردین 1394, 20:14 عصر
به طور مثال میشه به این صورت عمل کرد


<a href="delete.php?id=<?php echo $row['id'];?>">delete </a>

mamadco
پنج شنبه 13 فروردین 1394, 03:25 صبح
به طور مثال میشه به این صورت عمل کرد


<a href="delete.php?id=<?php echo $row['id'];?>">delete </a>

ممنون میشه بیشتر توضیح بدی ؟

Mohammadsgh
پنج شنبه 13 فروردین 1394, 23:14 عصر
یک درخواست get میفرسته به فایلی که نامش delete.php هست و آی دی های شما رو که از دیتابیس فچ کرده و درونش قرار میده