Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

checkbox dodanie do bazy php

scy12 05 Kwi 2011 12:01 1676 10
  • #1 05 Kwi 2011 12:01
    scy12
    Poziom 12  

    Napisałem kod który wyświetli tabelę w której znajduje się id i listazadan chcę aby ktoś zaznaczył pole listazadan nacisnął przycisk dodaj i słowo poska kompilator dodał do bazy w kolumnie lista zadań

    Kod: php
    Zaloguj się, aby zobaczyć kod


    Proszę pamiętać o używaniu znaczników syntax. Opcja Listing kodu. - arnoldziq

    0 10
  • #2 05 Kwi 2011 12:41
    arnoldziq
    Moderator Programowanie

    Na samy początek, musisz ustalić gdzie twój formularz wysyła dane. W tym momencie... nie wysyła ich nigdzie...

    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #3 05 Kwi 2011 12:59
    scy12
    Poziom 12  

    podzieliłem to zadanie na dwa pliki

    Kod: php
    Zaloguj się, aby zobaczyć kod



    Kod: php
    Zaloguj się, aby zobaczyć kod

    Proszę pamiętać o używaniu znaczników syntax. Opcja Listing kodu. - arnoldziq

    0
  • #4 05 Kwi 2011 14:34
    arnoldziq
    Moderator Programowanie

    Zastanów się nad tą częścią :

    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #5 05 Kwi 2011 16:41
    scy12
    Poziom 12  

    Napisałem trochę inaczej tą linijkę ale nadal nie działa

    Code:
    <input type="checkbox" name="listazadan" value="true" checked="checked" /> 

    Code:

    <?php $con = mysql_connect("localhost","root");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

      mysql_select_db("pol", $con);



    $result = mysql_query("SELECT * FROM pol", $con);

    echo "<table border='1'>
    <tr>
    <th>id</th>
    <th>listazadan</th>


    </tr>";

    while($row = mysql_fetch_array($result))
      { echo '<form METHOD="POST" ACTION="inny1.php">';
      echo "<tr>";
      echo "<td>" . $row['id'] . "</td>";

    echo '<th><input type="checkbox" name="listazadan" value="true" checked="checked" /> </th>';


      echo "</tr>";
           }

    echo "</table>";

      echo '<input type="submit" name="" value="dodanie"><br/> ';

    mysql_close();

      ?>

    Code:

    <?php

    $con = mysql_connect("localhost","root");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

      mysql_select_db("pol", $con);



      $naz=array('listazadan');

      for($i=0; $i<count($naz); $i++){
     if (isset($_POST['listazadan']))  {
     $sql="UPDATE pol SET $listazadan='polska' WHERE id=$id";
     if (!mysql_query($sql, $con)) {
                    die('Error: ' . mysql_error($con));

                }          }

                   }
                   
                echo 'record zmieniono ';
     ?>





    Moderowany przez arnoldziq:

    Drogi kolego. Ile razy mogę prosić o używanie znaczników syntax? I to jeszcze w tym samym wątku ? Może ostrzeżenie #2, nauczy kolegę czegoś.

    0
  • #6 05 Kwi 2011 17:46
    arnoldziq
    Moderator Programowanie

    Sugeruję zastosować takie dwa kody :
    Kod główny :

    Kod: php
    Zaloguj się, aby zobaczyć kod

    Kod pliku inny1.php
    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #7 05 Kwi 2011 18:05
    scy12
    Poziom 12  

    wielkie dzięki

    0
  • #8 07 Kwi 2011 10:09
    scy12
    Poziom 12  

    tylko że niestety jeszcze czepia się do tego miejsca

    Code:
     $value = $_POST['lz'.$row['id']];

    0
  • #9 07 Kwi 2011 10:21
    arnoldziq
    Moderator Programowanie

    A co to znaczy "czepia się" ?

    0
  • #10 07 Kwi 2011 10:31
    scy12
    Poziom 12  

    Code:

    Notice: Undefined index: lz2 in C:\Program Files\EasyPHP5.2.10\www\inny1.php on line 23

    0
  • #11 07 Kwi 2011 12:05
    arnoldziq
    Moderator Programowanie

    Możesz zastosować taki kod w pliku inny1.php :

    Kod: php
    Zaloguj się, aby zobaczyć kod

    To pozwoli na uniknięcie błędu, który opisałeś...
    Ale to nie rozwiązuje problemu.
    Ten błąd jest generowany, gdy próbujesz sprawdzić wartość elementu $_GET lub $_POST, który nie został wcześniej wysłany poprzez formularz na stronie.
    W Twoim przypadku, ciężko jest powiedzieć, co powoduje ten konkretny błąd... Jedyne co można wywnioskować, to to, że skrypt próbuje sprawdzić zawartość zmiennej zl2, której nie dostał z formularza...

    0