AMcoder - javascript, python, java, html, php, sql

PHP Session փոփոխականի փոխանցում «Include» էջի խնդրին

Ես աշխատում եմ հիմնական PHP էջի հետ, որն ունի չորս ներառված ձևանմուշներ.

<?php session_start(); ?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<title>Example Page</title>
</head>
<body>
<?php include ("script/select.class.php"); ?>
<div class="content">
<?php 
    include("./templates/one.php");
    include("./templates/two.php");
    include("./templates/three.php");
    include("./templates/four.php");
?>
</div>
</body>
</html>

'two.php'-ը պարունակում է AJAX-ի միջոցով ներկայացված ձև (the_form):

$('#button').click(function(){
        $.ajax({
            type: "POST",
            url: "script/add_new.php",
            data: $("#the_form").serialize(),
            success: function(data){
                newID = data;
                alert(newID); 
            }
        });
});

«add_new.php»-ում, երբ INSERT-ն ավարտվի, ես ունեմ այս PHP կոդը.

if (!mysqli_query($con,$sql)) {
    die('Error: ' . mysqli_error($con));
}

$_SESSION['new_id'] = mysqli_insert_id($con);

echo $_SESSION['new_id'];

Խնդիրը, որին ես բախվում եմ, այն է, որ չնայած $_SESSION['new_id'] կանցնի Ajax-ի «տվյալների» var-ով և կհայտնվի «զգուշացում»-ում, ես ստանում եմ Չբացահայտված ինդեքս սխալ, եթե Ես փորձում եմ ցուցադրել կաղապարի հաջորդ էջում (three.php)՝ օգտագործելով <?php echo $_SESSION['new_id'] ?>:

Կա՞ն առաջարկներ:


  • $_SESSION['new_id']-ը սահմանվում է AJAX հարցման ժամանակ, մինչդեռ include("./templates/three.php");-ը ներառված է ԱՋԱՔՍ մասի js կոդը և html-ը բրաուզեր ուղարկելուց առաջ, մինչև ajax հարցումը և այլն: 12.11.2014
  • Ի վերջո, ես ուզում եմ, որ արժեքը պահվի var-ի նիստում: «Զգուշացումն» օգտագործվում է ապացուցելու, որ նստաշրջանը var գոյություն ունի: Ուզում եք ասել, որ սեսիայի var-ն անհասանելի է ինձ համար, քանի որ «three.php»-ն արդեն ներառված է: 12.11.2014
  • Այն պահին, երբ three.php-ը ներառված է, դուք, հավանաբար, չունեք այս փոփոխականների հավաքածուն կամ այն ​​սահմանված չէ ձեր ակնկալած արժեքի վրա: Դուք php կոդը «ստեղծում» է html կոդը js կոդով ajax հարցման համար, այն դուրս է բերում բրաուզեր, բրաուզերը ajax հարցում է կատարում մեկ այլ php կոդ, և դա տեղի է ունենում include("./templates/three.php");-ից ՀԵՏՈ, եթե փորձում եք ավելի ուշ ինչ-որ բան ցույց տալ three.php-ին մեկ հարցմամբ, որն ունի դրա մեջ միայն <?php echo $_SESSION['new_id'] ?> - դուք պետք է սկսեք նիստը այս մեկ ֆայլում: 12.11.2014
  • պարզապես համոզվեք, որ դուք ունեք session_start();add_new.php-ում 12.11.2014
  • Շնորհակալություն, Չերի: Ես պետք է այլ մոտեցում ցուցաբերեմ: 20.11.2014

Պատասխանները:


1

Cheery-ը ճիշտ է: Ես պետք է այլ մոտեցում ցուցաբերեմ:

20.11.2014
Նոր նյութեր

Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..