WithoutBrain1994

مشکل در ساخت جدول

10 پست در این موضوع قرار دارد

سلام

توی خط 107 این کد این ارور رو میده

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource on line 107

<?php

class mysqldb {

/*

FILL IN YOUR DATABASE DETAILS BEFORE RUNNING THE EXAMPLE

*/

var $hostname = "localhost";

var $username = "user";

var $password = "pass";

var $database = "db";

function db_connect() {

$result = mysql_connect($this->hostname,$this->username,$this->password);

if (!$result) {

echo 'Connection to database server at: '.$this->hostname.' failed.';

return false;

}

return $result;

}

function select_db() {

$this->db_connect();

if (!mysql_select_db($this->database)) {

echo 'Selection of database: '.$this->database.' failed.';

return false;

}

}

function query($query) {

$result = mysql_query($query) or die("Query failed: $query<br><br>" . mysql_error());

return $result;

mysql_free_result($result);

}

function fetch_array($result) {

return mysql_fetch_array($result);

}

function num_rows($result) {

return mysql_num_rows($result);

}

function last_insert_id() {

return mysql_insert_id();

}

function kill() {

mysql_close();

}

}

?>

<!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=iso-8859-1">

<title>jQuery</title>

<script type="text/javascript" src="js/jquery.js"></script>

<link rel="stylesheet" type="text/css" href="css/css.css" />

<script type="text/javascript">

var count = 0;

$(function(){

$('p#add_field').click(function(){

count += 1;

$('#container').append(

'<strong>Link #' + count + '</strong><br />'

+ '<input id="field_' + count + '" name="fields[]' + '" type="text" /><br />' );

});

});

</script>

<body>

<?php

//If form was submitted

if (isset($_POST['btnSubmit'])) {

//create instance of database class

$db = new mysqldb();

$db->select_db();

//Insert static values into users table

$sql_user = sprintf("INSERT INTO users (Username, Password) VALUES ('%s','%s')",

mysql_real_escape_string($_POST['name']),

mysql_real_escape_string($_POST['password']) );

$result_user = $db->query($sql_user);

//Check if user has actually added additional fields to prevent a php error

if ($_POST['fields']) {

//get last inserted userid

$inserted_user_id = $db->last_insert_id();

//Loop through added fields

foreach ( $_POST['fields'] as $key=>$value ) {

$table = "CREATE TABLE mysql_real_escape_string($value)

(

id INT(11) NOT NULL AUTO_INCREMENT,

PRIMARY KEY(id),

name CHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,

)";

mysql_query($table,$result);

//Insert into websites table

$sql_website = sprintf("INSERT INTO websites (Website_URL) VALUES ('%s')",

mysql_real_escape_string($value) );

$result_website = $db->query($sql_website);

$inserted_website_id = $db->last_insert_id();

//Insert into users_websites_link table

$sql_users_website = sprintf("INSERT INTO users_websites_link (UserID, WebsiteID) VALUES ('%s','%s')",

mysql_real_escape_string($inserted_user_id),

mysql_real_escape_string($inserted_website_id) );

$result_users_website = $db->query($sql_users_website);

}

} else {

//No additional fields added by user

}

echo "<h1>User Added, <strong>" . count($_POST['fields']) . "</strong> website(s) added for this user!</h1>";

//disconnect mysql connection

$db->kill();

}

?>

<?php if (!isset($_POST['btnSubmit'])) { ?>

<h1>New User Signup</h1>

<form name="test" method="post" action="">

<label for="name">Username:</label>

<input type="text" name="name" id="name" />

<div class="spacer"></div>

<label for="name">Password:</label>

<input type="text" name="password" id="password" />

<div class="spacer"></div>

<div id="container">

<p id="add_field"><a href="#"><span>» Add your favourite links.....</span></a></p>

</div>

<div class="spacer"></div>

<input id="go" name="btnSubmit" type="submit" value="Signup" class="btn" />

</form>

<?php } ?>

</body>

</html>

لطفا کمک کنید

خط 107 این کد نوشته شده


mysql_query($table,$result);

ویرایش شده در توسط Morteza
کدهای بلند در longbox

به اشتراک گذاری این پست


لینک به پست

این کلاس وضعش داغونه

اما واسه اینکه کارت راه بی افته به جای mysql_query باید بزنی


$db->query($qr);

به اشتراک گذاری این پست


لینک به پست

مرسی

این کدی که گذاشتین دقیقا جایگزین کردم نشد

این کد رو هم جایگزین کردم بازم نشد


$db->query($table,$result);

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

خیلی ممنون میشم

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

من میخوام با jquery به فرمم تکتست باکس اضافه کنم و با php به درون پایگاه داده از اطلاعات تکست باکسها جدول بسازم

اون کدی که من بالا گذاشتم کارش همینه ولی به جای اینکه جدول بسازه اطلاعات رو توی جدول های از پیش تعیین شده وارد میکنه

به اشتراک گذاری این پست


لینک به پست

syntaxات مشکل داره عمو .


$table = "CREATE TABLE mysql_real_escape_string($value)
(
id INT(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
name CHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
)";

صحیح


$table = "CREATE TABLE " . mysql_real_escape_string($value) ."
(
id INT(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
name CHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
)";

میشه توضیح بدین دقیقا میخواین چیکار کنین؟

این کاری که شما انجام میدید خیلی خطرناکه .

دستی دستی داری باگ sql injaction ایجاد میکنی توی سایتت .

فقط خودت ازش استفاده کن .

به اشتراک گذاری این پست


لینک به پست

من یه فرم دارم که ممکنه یکی از اطلاعاتش از یکی بیشتر باشه و به خاطر همین باید یه کاری کنم که امکان اضافه کردن تکست باکس هنگام اجرای فرم رو داشته باشه

و میخوام اطلاعات اون تکست باکس ها هرکدومش به یک جدول تبدیل بشه

در ضمن از این قابلیت فقط خودم میخوام استفاده کنم و به کاربر مربوط نمیشه

حالا اگه شما راه حل دیگه رو میدونین بهم بگین

اون کد بالا رو هم جایگذین کردم بازم نشد

ویرایش شده در توسط reza_t

به اشتراک گذاری این پست


لینک به پست

من کد رو ویرایش کردم

لطفا بگین مشکل این یکی چیه. اطلاعاتی که توی تکست باکس ها مینویسیم رو نمایش میده ولی جدول رو نمیسازه


<!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>jQuery</title>
<script type="text/javascript" src="adding form/js/jquery.js"></script>
<link rel="stylesheet" type="text/css" href="adding form/css/css.css" />
<script type="text/javascript">
var count = 0;
$(function(){
$('p#add_field').click(function(){
count += 1;
$('#container').append(
'<strong>جدول #' + count + '</strong><br />'
+ '<input id="field_' + count + '" name="fields[]' + '" type="text" /><br />' );
});
});
</script>
<body>
<?php
if (isset($_POST['btnSubmit'])) {
$result = mysql_connect("localhost","user","pass") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());
if ($_POST['fields']) {
foreach ( $_POST['fields'] as $value ) {
echo $value . "<br>";
$tb = "CREATE TABLE $value
(
id INT(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
name CHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
)";
mysql_query($tb,$result);
}
}
echo "<h1>جدول ساخته شد</h1>";
mysql_close();
}
?>
<?php if (!isset($_POST['btnSubmit'])) { ?>
<h1>ساخت جدول جدید</h1>
<form name="test" method="post" action="">
<div id="container">
<p id="add_field"><a href="#"><span>» اضافه کردن جدول جدید....</span></a></p>
</div>
<div class="spacer"></div>
<input id="go" name="btnSubmit" type="submit" value="ساختن" class="btn" />
</form>
<?php } ?>
</body>
</html>

لطفا کمک کنید

به اشتراک گذاری این پست


لینک به پست

کد قبلیتون که خیلی بهم ریخته و قاطی شده بود و حقیقتش من اصلا رغبت نکردم کد رو بررسی کنم!

شما باید کلاس ها رو در فایل جدا، اینکلودها در فایل جدا و بخش نمایش رو جدا می کردید.

اینجوری پیدا کردن مشکل هم راحتتر میشد.

در مورد کد دوم. شما $tb رو هم بزارید چاپ بشه بعد اون کوئری خروجی رو توی mysql اجرا کنید ببینید جدولی میسازه یا خیر.

به اشتراک گذاری این پست


لینک به پست

$tb رو چاپ کردم و به خوبی چاپش کرد

کار دومی که گفتین رو متوجه نشدم

کدوم کوئری خروجی؟

به اشتراک گذاری این پست


لینک به پست

شما دقیقا بگید چی میخواید تا بشه یه راه حل منطقی گفت .

بهترین سناریو اینه

دو تا جدول بسازید

یکیش برای نگه داری فیلدهاتون

یکیش برای مشخصات هر فرم .

با کلید بهم مرتبط کنید .

دیگه مشکلی مثل اینکه یکی 100 تا فیلد بخواد ، یکی 10 تا فیلد پیدا نمیکنید .

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط napo
      سلام 
      افزونه max mega menu  رو دانلود کردم ولی متاسفانه راستچین نیست یعنی زیر منو رو سمت راست ایجاد میکنه به جای اینکه در سمت چپ نشون بده همونطوری که توی عکس مشخصه بعد انتخاب دوتا زیر منو کلا از صفحه خارج میشه
      اگه میشه کمکم کنید
      اگه کسی افزونه ای دیگه میشناسه که هم راستیچینه هم اکاردئونی ممنون میشم معرفی کنه

    • توسط oonchiye
      سلام
      تنظیمات مربوط به افزونه رو انجام دادم برگه ها موجود هستش 
      شرت کد های مربوط هم درسته 
      فقط وقتی دکه پرداخت رو میزنی صفحه تسویه حساب فقز اسم برگه رو میاره 
      مینویسه check uot فقط
      چیکار کنم خیلی لازم دارم 
    • توسط behi13
      با سلام
      دوستام و اساتید محترم یک سوال
      من به سایت دوزبانه با افزونه wpml درست کردم الان یک مشکل هست توی گوگل صفحه اول سایت ایندکس شده و توی فارسی مشکلی ندارم
      ولی توی زبان انگلیسی وقتی توی گوگل به انگلیسی سرچ میکنم بازهم با نام و فارسی میاد
      ممنون میشم من و راهنمایی کنید
    • توسط j1989m
      سلام
      توی قسمت افزودن نوشته و از طریق پرونده های رسانه ای یه عکس انتخاب میکنم و منتشر میکنم. توی سایت عکس رو نشون میده اما این کدها رو هم میاره:
      [caption id="attachment_154" align="aligncenter" width="300"] [/caption]
      درواقع عکس بین دوتا caption بالا قرار میگیره.
      این مشکل توی افزودن برگه نیست.
      لطفا راهنمایی کنید
      خیلی فوریه
      ممنون
    • توسط xboby
      سلام،
      من سایتی با ورد پرس طراحی کردم و می خواهم با:
      یک برنامه تمام پستهای موجود در کانال تلگرامی که بنام آن سایت ایجاد کر ده ام را
      بتوانم از موبایلم دانلود کنم و بعد در آن سایت قرار دهم:
      آیا چنان برنامه ای وجود دارد؟ لطفا راهنمائی ام بفرمائید.
                                   متشکرم