Kết nối biến không xác định trong PHP

chúc cả nhà một ngày tốt lành, tôi cần trợ giúp về kết nối này. tôi đang có một vấn đề. tôi đã tạo một cơ sở dữ liệu có tên là bình phương trong mysql và bên dưới nó là một bảng có tên là đăng ký với 3 trường. vì vậy tôi đang cố gắng chèn thông tin thông qua mã hóa bằng trình soạn thảo php. nhưng tôi đang gặp lỗi biến không xác định. tôi đã tạo các biểu mẫu trong html

" . mysqli_error($conn);
}
mysqli_close($conn);


?>

Kết nối biến không xác định trong PHP

mik3075

Đăng ngày 23 tháng 1 năm 2022

mik3075

  • Kết nối biến không xác định trong PHP

  • Các thành viên
    • 13
  • Địa điểm. Texas

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022 (đã chỉnh sửa)

I am stuck on this form.  I can use  to pass the id number from courtdirectory.php to courtdirectoryview.php and all the data from the MySQL db is displayed correctly.  When I make changes to test the update query and I click the Update button I get the error in the title.  Line 42 is:  echo "WHY DOES THE ID NUMBER NOT SHOW UP HERE WHEN THE UPDATE BUTTON IS CLICKED: " .$_GET['id']. "
";  Any suggestions or advice will be greatly appreciated


  
     rel="stylesheet" href="css/main-forcourtdirectory.css">
  

  php
    //============================================================================================================================================================================================/
    //OPEN CONNECTION TO MYSQL ON LOCALHOST=======================================================================================================================================================/
    $dbhost = 'localhost' ;
    $username = 'root' ;
    $password = '' ;
    $conn = mysqli_connect("$dbhost", "$username", "$password");
    if (!$conn) { 
      die('Could not connect: ' . mysqli_error()); 
    }
    //CLOSE CONNECTION TO MYSQL ON LOCALHOST======================================================================================================================================================/
    //============================================================================================================================================================================================/

    //============================================================================================================================================================================================/
    //OPEN CONNECTION TO MYSQL ON LOCALHOST=======================================================================================================================================================/
    mysqli_select_db($conn, "courtdirectory");
    //CLOSE CONNECTION TO MYSQL ON LOCALHOST======================================================================================================================================================/
    //============================================================================================================================================================================================/

    //============================================================================================================================================================================================/
    // DEFINE VARIABLES AND SET EMPTY VALUES======================================================================================================================================================/
    // PROSECUTOR VARIABLES=======================================================================================================================================================================/
    $varprosecutor = $varprosecutoraddress = $varprosecutorphone = $varprosecutorfax = $varprosecutornotes = "";
    //============================================================================================================================================================================================/
    // PROSECUTOR ERROR VARIABLES=================================================================================================================================================================/
    $varprosecutorErr = $varprosecutoraddressErr = $varprosecutorphoneErr = $varprosecutorfaxErr = $varprosecutornotesErr = "";
    //============================================================================================================================================================================================/
    // OTHER VARIABLES============================================================================================================================================================================/
    $varmyid = $varipaddress = $formerror = $success = "";
    //============================================================================================================================================================================================/

    //============================================================================================================================================================================================/
    //FORM SUBMITTED WITH POST METHOD=============================================================================================================================================================/
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
    //============================================================================================================================================================================================/

      echo "WHY DOES THE ID NUMBER NOT SHOW UP HERE WHEN THE UPDATE BUTTON IS CLICKED: " .$_GET['id']. "
"
; //==========================================================================================================================================================================================/ //START UPDATE SQL==========================================================================================================================================================================/ //NONE OF THIS CODE WILL WORK UNTIL I CAN GET THE ID NUMBER=================================================================================================================================/ //$result2 = mysqli_query($conn, "UPDATE courtdirectory SET prosecutor='$varprosecutor' WHERE courtdirectory.id = ($myid)") or die("Error: " . mysqli_error($conn)); //$retval3 = mysqli_query($conn, $result2); //if (mysqli_query($conn, $result2)) { // echo "Record updated successfully"; //} else { // echo "Error updating record: " . mysqli_error($conn); //} //END UPDATE SQL============================================================================================================================================================================/ //==========================================================================================================================================================================================/ }else{ if (isset($_GET['id'])) { $myid = $_GET['id']; $varmyid = $myid; } echo "I CAN GET THE ID NUMBER FROM THE COURTDIRECTORY.PHP PAGE: " .$myid. "
"
; echo "I CAN SET THIS VARIABLE TO THE THE ID NUMBER: " .$varmyid. "
"
; echo ""; if (isset($_GET['id'])) { $myid = $_GET['id']; } $bulletinsQuery = "SELECT * FROM courtdirectory"; $bulletins = $conn->query($bulletinsQuery); if (isset($_GET['id'])) { $myid = $_GET['id']; } echo "
"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; $sql2 = "SELECT * FROM courtdirectory WHERE courtdirectory.id = ($myid)"; $retval2 = mysqli_query($conn, $sql2); $result2 = mysqli_query($conn, "SELECT * FROM courtdirectory WHERE courtdirectory.id = ($myid)") or die("Error: " . mysqli_error($conn)); while($row = mysqli_fetch_array($retval2, MYSQLI_ASSOC)) { $varprosecutor = $row['prosecutor']; $varprosecutoraddress = str_replace(',', ' ', $row['prosecutoraddress1']); $varprosecutorphone = $row['prosecutorphone']; $varprosecutorfax = $row['prosecutorfax']; $varprosecutornotes = $row['prosecutornotes']; $varprosecutornotes = str_replace(['
'
,'
'
,'
'
], ' ', $row['prosecutornotes']); echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
CountyCityCourtJudgeAddressPhoneFaxCourt Notes
" .$row['county']. "" .$row['city']. "" .$row['court']. "" .$row['judge']. "" .$row['address']. "" .$row['phone']. "" .$row['fax']. "" .$row['notes']. "
"
; echo "
"
; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
ProsecutorProsecutor AddressProsecutor PhoneProsecutor FaxProsecutor Notes
"
; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
"
; } echo ""
; echo ""; } ?>

 

Được chỉnh sửa vào ngày 23 tháng 1 năm 2022 bởi mike3075
đã phải thay đổi một số mã

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

requinix

Đăng ngày 23 tháng 1 năm 2022

requinix

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • quản trị viên
  • Kết nối biến không xác định trong PHP
    • 14. 5k
    • 298
  • Địa điểm. Mỹ/Los_Angeles

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022

Gửi biểu mẫu và xem URL. Bạn có thấy "id" trong đó không?

Nếu bạn muốn biểu mẫu gửi lại cùng một trang thì hãy xóa hoàn toàn hành động của biểu mẫu. Bởi vì mặc định cho một biểu mẫu không có biểu mẫu nào là gửi lại cùng một trang

 

Và ngừng sử dụng PHP_SELF

  • Kết nối biến không xác định trong PHP
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

điểm ảnh

Đăng ngày 23 tháng 1 năm 2022

điểm ảnh

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • Thành viên mới
    • 4
  • Địa điểm. Ma trận
  • Lứa tuổi. 17

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022 (đã chỉnh sửa)

Vấn đề với PHP_SELF là nó quay lại chính xác cùng một tập lệnh và nó không an toàn một cách lố bịch. Nếu bạn muốn gửi đến trang, hãy xóa hành động hoặc sử dụng tên tệp thay vì PHP_SELF

Có lẽ tôi chỉ thiếu một cái gì đó, nhưng tại sao bạn lại sử dụng POST làm phương thức yêu cầu nhưng lại cố gắng sử dụng $_GET['id']? . Bạn có thể muốn sử dụng bảng điều khiển dành cho nhà phát triển của trình duyệt để xem dữ liệu đã gửi

Tôi sẽ sử dụng var_dump để xem các giá trị là gì trước khi tiếp tục, như vậy

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
	// This is a post request
	echo $_GET['id'] . "\n";
	var_dump($_GET['id']);
}

Sau đó, bạn có thể kiểm tra xem các giá trị đã đi qua chưa. Nếu giá trị của bạn là null, điều đó có nghĩa là chúng đã không vượt qua

Ngoài ra, tôi biết đó không phải là phản hồi chính, nhưng vì tôi ở đây nên tôi cũng có thể tham gia. bạn thực sự nên cân nhắc việc sử dụng PDO hoặc các câu lệnh đã chuẩn bị, vì các truy vấn SQL được nối của bạn như hiện tại đã sẵn sàng để tiêm SQL

Chỉnh sửa. Ồ, và vì bạn đã cung cấp cho chúng tôi thông tin đăng nhập MySQL của mình, bạn có thể muốn thay đổi điều đó (vì bây giờ mọi người đều biết bạn sử dụng tài khoản root). 😜

Được chỉnh sửa vào ngày 23 tháng 1 năm 2022 bởi Pixel

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

ginerjm

Đăng ngày 23 tháng 1 năm 2022

ginerjm

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • Các thành viên
    • 6. 4k
    • 62
  • Địa điểm. VoorheesvilleNY

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022 (đã chỉnh sửa)

Tôi hoàn toàn bối rối bởi mã của bạn ở đây. Bạn có những gì trông giống như một nỗ lực truy vấn bằng một cú pháp duy nhất không phải là mysqli nhưng không bao giờ sử dụng kết quả (nếu có). Sau đó, bạn chạy cùng một truy vấn hai lần nhưng không bao giờ sử dụng tập hợp kết quả thứ 2, vậy tại sao phải bận tâm?

Đây là phiên bản mã đã được làm sạch của bạn, phiên bản này có thể dễ giải mã hơn hoặc ít nhất là dễ đọc hơn, có thể giúp bạn viết mã tốt hơn trong tương lai. Tôi thực sự không hiểu tại sao bạn lại xây dựng 3 bảng html



 rel="stylesheet" href="css/main-forcourtdirectory.css">

php
$dbhost = 'localhost' ;
$username = 'root' ;
$password = '' ;
$conn = mysqli_connect("$dbhost", "$username", "$password");
if (!$conn) 
{ 
	die('Could not connect: ' . mysqli_error()); 
}
mysqli_select_db($conn, "courtdirectory");
$varprosecutor = $varprosecutoraddress = $varprosecutorphone = $varprosecutorfax = $varprosecutornotes = "";
$varprosecutorErr = $varprosecutoraddressErr = $varprosecutorphoneErr = $varprosecutorfaxErr = $varprosecutornotesErr = "";
$varmyid = $varipaddress = $formerror = $success = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") 
{
	echo "WHY DOES THE ID NUMBER NOT SHOW UP HERE WHEN THE UPDATE BUTTON IS CLICKED: " .$_GET['id']. "
"
; } else { if (isset($_GET['id'])) { $myid = $_GET['id']; $varmyid = $myid; } echo "I CAN GET THE ID NUMBER FROM THE COURTDIRECTORY.PHP PAGE: " .$myid. "
"
; echo "I CAN SET THIS VARIABLE TO THE THE ID NUMBER: " .$varmyid. "
"
; echo ""; // WHY DO THIS AGAIN??? if (isset($_GET['id'])) { $myid = $_GET['id']; } $bulletinsQuery = "SELECT * FROM courtdirectory"; // WHAT IS THIS LINE SUPPOSED TO BE??? // WHAT IS THIS LINE SUPPOSED TO BE??? // WHAT IS THIS LINE SUPPOSED TO BE??? $bulletins = $conn->query($bulletinsQuery); // WHY DO THIS A 3RD TIME??? if (isset($_GET['id'])) { $myid = $_GET['id']; } echo "
"; echo ""; // Query 1 $sql2 = "SELECT * FROM courtdirectory WHERE courtdirectory.id = '$myid'"; $retval2 = mysqli_query($conn, $sql2); // did this query run successful??? // Query 2 $result2 = mysqli_query($conn, "SELECT * FROM courtdirectory WHERE courtdirectory.id = '$myid'") or die("Error: " . mysqli_error($conn)); // begin loop on query 1 while($row = mysqli_fetch_array($retval2, MYSQLI_ASSOC)) { $varprosecutor = $row['prosecutor']; $varprosecutoraddress = str_replace(',', ' ', $row['prosecutoraddress1']); $varprosecutorphone = $row['prosecutorphone']; $varprosecutorfax = $row['prosecutorfax']; $varprosecutornotes = $row['prosecutornotes']; $varprosecutornotes = str_replace(['
'
,'
'
,'
'
], ' ', $row['prosecutornotes']); // Data from query 1 echo "
County City Court Judge Address Phone Fax Court Notes
{$row['county']} {$row['city']} {$row['court']} {$row['judge']} {$row['address']} {$row['phone']} {$row['fax']} {$row['notes']}

Prosecutor Prosecutor Address Prosecutor Phone Prosecutor Fax Prosecutor Notes
"
; // end table 3 } echo ""
; echo ""; } echo ""; exit();

Xem nhận xét của tôi được nhúng trong mã này

Ngoài ra - nếu truy vấn của bạn tạo nhiều hơn một hàng thì bạn sẽ tạo 3 bảng đó nhiều lần và nhúng tất cả chúng vào trong biểu mẫu đơn của bạn. Điều đó sẽ làm cho bất kỳ dữ liệu POST nào trở nên khó đoán

 

Đã chỉnh sửa ngày 23 tháng 1 năm 2022 bởi ginerjm

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

điểm ảnh

Đăng ngày 23 tháng 1 năm 2022

điểm ảnh

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • Thành viên mới
    • 4
  • Địa điểm. Ma trận
  • Lứa tuổi. 17

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022 (đã chỉnh sửa)

Ngoài ra, trong khi bạn thực sự nên đọc những gì @ginerjmsaid, tôi cũng phải chỉ ra rằng (a) bạn thực sự nên xóa các truy vấn trùng lặp và (b) không có xác thực nào đối với các truy vấn của bạn vì bạn chỉ đơn giản cho rằng $retval2 tồn tại thay vì kiểm tra xem nó có tồn tại không

Và vui lòng xem xét đặt tên biến có ý nghĩa hơn một chút - về lâu dài, bạn sẽ dễ hiểu mã bạn đã viết hơn

Được chỉnh sửa vào ngày 23 tháng 1 năm 2022 bởi Pixel

  • Kết nối biến không xác định trong PHP
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

ginerjm

Đăng ngày 23 tháng 1 năm 2022

ginerjm

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • Các thành viên
    • 6. 4k
    • 62
  • Địa điểm. VoorheesvilleNY

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022 (đã chỉnh sửa)

Tôi đồng ý với Pixel. Tại sao lại thêm 'var' vào một tên đã được gọi là 'biến'? . Một ví dụ sẽ là 'psecutor_fax' chẳng hạn. Tránh xa chữ hoa và chữ thường

 

CẬP NHẬT

mới để ý. Bạn đang hiển thị rất nhiều dữ liệu trong 3 bảng (hoặc bội số của 3) tất cả được bao bọc trong một biểu mẫu có nút gửi, nhưng nó dùng để làm gì? . Bạn tự hỏi tại sao 'id' không hiển thị. Vâng - đó là lý do tại sao. Bạn đang sử dụng nút gửi để tạo POST (theo thẻ biểu mẫu của bạn), vì vậy bạn cần một thẻ đầu vào ở đâu đó để gửi id đó

Đã chỉnh sửa ngày 23 tháng 1 năm 2022 bởi ginerjm

  • Kết nối biến không xác định trong PHP
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

requinix

Đăng ngày 23 tháng 1 năm 2022

requinix

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • quản trị viên
  • Kết nối biến không xác định trong PHP
    • 14. 5k
    • 298
  • Địa điểm. Mỹ/Los_Angeles

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022

POSTed hình thức rất có khả năng bao gồm các tham số GET. tất cả những gì bạn phải làm là đặt chúng vào URL của hành động biểu mẫu. Vấn đề ở đây là URL của hành động biểu mẫu không bao gồm bất kỳ tham số GET nào

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP

mik3075

Đăng ngày 23 tháng 1 năm 2022

mik3075

  • Kết nối biến không xác định trong PHP

  • Các thành viên
    • 13
  • Địa điểm. Texas

  • Tác giả

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022

Đầu tiên, tôi muốn cảm ơn tất cả mọi người đã dành thời gian, đề xuất và khuyến nghị của họ. Dưới đây là câu trả lời của tôi cho câu hỏi, gợi ý và khuyến nghị của bạn

requinix

“Id” không hiển thị sau khi tôi nhấp vào nút Cập nhật

 

điểm ảnh

Thành thật mà nói, tôi đã không quan tâm nhiều đến các phương thức GET và POST. tôi sẽ sửa nó. Tôi không nhận ra mình đã để lại thông tin đăng nhập MySQL trong mã tôi đã đăng. Cảm ơn bạn đã nắm bắt được điều đó.  

 

ginerjm

Tôi nghĩ rằng có các truy vấn trùng lặp và không sử dụng kết quả là do tôi đang thử những thứ khác và không xóa hoặc nhận xét mã cũ

Cảm ơn bạn đã làm sạch cập nhật mã cho tôi. Nó dễ dàng hơn để đọc bây giờ

Lý do hiện tại có 3 bảng riêng biệt là vì các hàng cuối cùng sẽ được mã hóa màu và tôi không cảm thấy phiền với CSS ngay bây giờ

Truy vấn cuối cùng sẽ chỉ tạo ra một hàng

 

điểm ảnh

Tôi sẽ xóa các truy vấn bổ sung và chèn xác thực. Ngay bây giờ mặc dù tôi biết sẽ có một số dữ liệu nhất định được trả về từ MySQL DB. Điều này chỉ đơn thuần để thử nghiệm. Khi mọi thứ đang hoạt động, tôi sẽ chèn xác thực

Tôi sẽ đổi tên các biến khi tôi tiếp tục

 

ginerjm

Tôi chưa bao giờ thực sự nghĩ đến việc tắt 'var'. Tôi luôn nghĩ rằng việc tìm các biến sẽ dễ dàng hơn nếu có 'var' ở phía trước nó

Cuối cùng, khi người dùng thay đổi dữ liệu và nhấp vào Cập nhật, nó sẽ cập nhật DB. Tôi đặt tất cả các đầu vào thành 'textarea' để mọi thứ sẽ được căn chỉnh theo chiều dọc lên trên cùng

 

 

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Kết nối biến không xác định trong PHP
Kết nối biến không xác định trong PHP

ginerjm

Đăng ngày 23 tháng 1 năm 2022

ginerjm

  • Kết nối biến không xác định trong PHP
    Kết nối biến không xác định trong PHP

  • Các thành viên
    • 6. 4k
    • 62
  • Địa điểm. VoorheesvilleNY

    • Chia sẻ

Đăng ngày 23 tháng 1 năm 2022

Không nhận được bình luận cuối cùng của bạn. Đầu vào hoặc vùng văn bản - việc căn chỉnh tùy thuộc vào bạn trong cả hai trường hợp. Bạn đang sử dụng các bảng nên việc căn chỉnh không phải là vấn đề

Tại sao PHP hiển thị các biến không xác định?

Biến không xác định. không tìm thấy định nghĩa của biến trong tệp dự án, đường dẫn bao gồm được định cấu hình hoặc trong số các biến được xác định trước PHP . Biến có thể chưa được xác định. có một hoặc nhiều đường dẫn đến dòng có cách sử dụng biến mà không xác định nó.

Làm cách nào để sửa lỗi chỉ mục không xác định trong PHP?

Lỗi chỉ mục không xác định có thể được giải quyết bằng cách sử dụng hàm gọi là hàm isset(). Lỗi chỉ mục không xác định có thể được bỏ qua bằng cách cập nhật tùy chọn error_reporting thành ~E_NOTICE để vô hiệu hóa báo cáo thông báo

Chỉ mục không xác định có nghĩa là gì trong PHP?

Khi sử dụng chúng, bạn có thể gặp lỗi có tên là “Thông báo. Chỉ số không xác định". Lỗi này có nghĩa là trong mã của bạn, có một biến hoặc hằng số không được gán giá trị cho nó

Biến không xác định trong Python là gì?

Biến không xác định trong mã nguồn của chương trình máy tính là biến được truy cập trong mã nhưng chưa được mã đó khai báo. In some programming languages, an implicit declaration is provided the first time such a variable is encountered at compile time.