Вставка значения из выпадающего списка в базу данных из другой таблицы - PullRequest
0 голосов
/ 20 февраля 2019

В моем проекте есть две таблицы активности студентов.(одна таблица (имя: evidall), где я храню свои предметы (в моем коде они написаны на иностранном языке с именем «predmet»), а у меня есть другая таблица (имя: evid_record), где у меня есть скрипт для вставки данных о студентах иУ меня есть выпадающий список, который извлекает имена субъектов из первой таблицы (evidall). Мне удается заставить его перетаскивать данные в выпадающий список, но когда я выбираю любой объект в выпадающем списке, он не будет сохранять его во второйТаблица (evid_record). Я пытаюсь сделать это в течение нескольких дней, и я действительно не знаю, что я делаю неправильно. Все, что я нашел в Интернете, для прямых значений, которые записаны в раскрывающемся списке, но мой случай немногоболее конкретно, чем это ..

Вот код моего DDL и форма:

    <body>

   <div class="forma">
       <form action="snimipodatkestud.php" method="Post">
           <fieldset>

    <span class="FieldInfo">Ime:</span><br><input type="text" name="imes" value=""><br>
    <span class="FieldInfo">Prezime:</span><br><input type="text" name="prezimes" value=""><br>
    <span class="FieldInfo">Broj indeksa: </span><br><input type="text" name="indeksbr" value=""><br>
    <span class="FieldInfo">Predmet: <br>
                    <select name="zpredmet">

                             <option>Choose one..</option>
                                       <option name="izpredmet" value="
                      <?php   

                                $ViewQuery="SELECT epredmet FROM evidall";
                                $Execute= mysqli_query($connection, $ViewQuery);

                                          while($datarows=mysqli_fetch_array($Execute)){
                                                echo "<option value=\"\">" . $datarows['epredmet'] . "</option>";
    }                       
                                             ?>" ></option>
                              <br></select><br>

    <span class="FieldInfo">Teorija kolokvijum:</span><br><input type="text" name="teorija" value=""><br>
    <span class="FieldInfo">Zadaci kolokvijum: </span><br><input type="text" name="zadaci" value=""><br>
    <span class="FieldInfo">Aktivnost: </span><br><input type="text" name="akt" value=""><br>
    <span class="FieldInfo">Prisustvo: </span><br><input type="text" name="pris" value=""><br>
    <span class="FieldInfo">Seminarski rad: </span><br><input type="text" name="semrad" value=""><br>
    <span class="FieldInfo">Domaci rad: </span><br><input type="text" name="domrad" value=""><br>

              <div class="klgg">
   <br><input type="submit" name="submit" value="Upisi"><br>
             </div>

              <br><?php echo $NEuspehupis; ?><br>
               <br><?php echo $uspehupis; ?><br> 
           </fieldset>


       </form>


   </div>




</body>

А вот часть вставки:

<?php include("konekcija.php");?>
<?php

    global $connection;
    global $uspehupis;
    global $NEuspehupis;

$ime = $prezime = $izpredmet = $teorija = $zadaci = $akt = $pris = $semrad = $domrad = $indeksbr =  "";


if(isset($_POST["submit"])){

if(!empty($_POST["imes"]) && !empty($_POST["indeksbr"])){



    $ime= $_POST["imes"];
    $prezime= $_POST["prezimes"];
    $indeksbr= $_POST["indeksbr"];
    $izpredmet= $_POST["izpredmet"];
    $teorija= $_POST["teorija"];
    $zadaci=  $_POST["zadaci"];
    $akt = $_POST["akt"];
    $pris= $_POST["pris"];
    $semrad= $_POST["semrad"];
    $domrad= $_POST["domrad"];


    $query= "INSERT INTO evid_record(imes,prezimes,indeksbr, predmet, teorija, zadaci, akt, pris, semrad, domrad) 
             VALUES ('$ime', '$prezime','$indeksbr','$izpredmet', '$teorija', '$zadaci', '$akt', '$pris', '$semrad', '$domrad')";





     $execute=mysqli_query($connection, $query);

    if($execute){
            $uspehupis = "<div class='alert alert-success alert-dismissible'>
  <a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
  <strong>Registracija uspesna!</strong></div>";

    }
}
    else{

        $NEuspehupis = "<div class='alert alert-danger fade in alert-dismissible'>
  <a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
  <strong>Morate uneti ime,prezime, email i sifru!</strong></div>";



}

  $query1 ="UPDATE evid_record SET `ukupno` = (teorija + zadaci + akt + pris + semrad + domrad)";

    $execute1=mysqli_query($connection, $query1);

}






?>

1 Ответ

0 голосов
/ 20 февраля 2019

Есть несколько проблем:

1) $izpredmet= $_POST["izpredmet"]; ... но в вашей форме у вас есть <select name="zpredmet">.Имена не совпадают, поэтому $_POST["izpredmet"];никогда не будет содержать никакого значения.

2) <option name="izpredmet" недопустимо - отдельные параметры не имеют имен, они не являются полями формы, поэтому удалите атрибут "name" здесь

3) <option value=\"\" выоставляя все значения параметров пустыми, поэтому даже если вы правильно отправите поле, значения не будут предоставлены - форма будет представлять пустую строку в качестве выбранного значения.Вам необходимо установить подходящее значение в атрибуте «value» опции.Если у вас нет отдельного идентификатора, который будет использоваться в качестве значения, вы можете просто написать

echo "<option value=\"".$datarows['epredmet']."\">" . $datarows['epredmet'] . "</option>";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...