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

php ձևի տվյալները ճիշտ չեն ներկայացվում տվյալների բազայում

իմ տվյալների բազայի անունը մուտք է և ունի աղյուսակ, որը կոչվում է օգտվողներ երեք սյունակ՝ անուն, id և գրառում: Երբ ես սեղմում եմ ուղարկել կոճակը, id-ն ավելանում է և ստեղծվում է նոր գրառում, բայց այս դաշտերում իրական տվյալներ չեն ստեղծվում: խնդրում ենք օգնել

 <?php
$servername="localhost";
$username="root";
$password="";
$dbname="login";

$conn=new mysqli($servername,$username,$password,$dbname);
if($conn->connect_error){
    die("connection error:".$conn->connect_error);
}else{
    echo 'connected successfully';
}
#defining varriables
$user_name = isset($_POST['user_name']);
$post = isset($_POST['post']);

#connect this to login details and pick the userrname

$sql="INSERT INTO posts(user_name,post)
VALUES('$user_name','$post')";
if($conn->query($sql)===TRUE){
    echo "your post was published";
}?>

ձևի տվյալները

    <form action="" method="post">
    <input type="text" name="user_name"/>
    <input type="text" name="post"/>
    <input type="submit" name="post to cdrone"/>
    </form>
22.09.2016

  • Դուք սխալ եք օգտագործում isset()-ը 23.09.2016

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


1

PHP-ի isset()-ը վերադարձնում է բուլյան արժեք: Այսպիսով, ձեր $user_name և $post փոփոխականները յուրաքանչյուրը կսահմանվեն կամ true կամ false, այլ ոչ թե ձեր ձևից տեղադրված արժեքները:

Հաշվի առեք արժեքները պայմանականորեն սահմանել՝ կախված isset() արժեքից:
Ես նախընտրում եմ օգտագործել եռակի օպերատոր ներառելու որոշակի վավերացում.

if (!empty($_POST)) {

  $user_name = !empty(trim($_POST['user_name'])) ? trim($_POST['user_name']) : false;
  $post = !empty(trim($_POST['post'])) ? trim($_POST['post']) : false;

  if (!$user_name) {
    echo "User Name is required.";
  } elseif (!$post) {
    echo "Post is required.";
  } else {
    // insert into database
  }

}

Արտահայտությունը (expr1) ? (expr2) . (expr3) գնահատում է expr2, եթե expr1-ը գնահատում է TRUE, և expr3, եթե expr1-ը գնահատում է FALSE:

22.09.2016
Նոր նյութեր

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

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

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

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

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

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

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