Skocz do zawartości
Zamknięcie Forum PC LAB

Szanowny Użytkowniku,

Informujemy, że za 30 dni tj. 30 listopada 2024 r. serwis internetowy Forum PC LAB zostanie zamknięty.

Administrator Serwisu Forum PC LAB - Ringier Axel Springer Polska sp. z o.o. z siedzibą w Warszawie: wypowiada całość usług Serwisu Forum PC LAB z zachowaniem miesięcznego okresu wypowiedzenia.

Administrator Serwisu Forum PC LAB informuje, że:

  1. Z dniem 29 listopada 2024 r. zakończy się świadczenie wszystkich usług Serwisu Forum PC LAB. Ważną przyczyną uzasadniającą wypowiedzenie jest zamknięcie Serwisu Forum PC LAB
  2. Dotychczas zamowione przez Użytkownika usługi Serwisu Forum PC LAB będą świadczone w okresie wypowiedzenia tj. do dnia 29 listopada 2024 r.
  3. Po ogłoszeniu zamknięcia Serwisu Forum od dnia 30 października 2024 r. zakładanie nowych kont w serwisie Forum PC LAB nie będzie możliwe
  4. Wraz z zamknięciem Serwisu Forum PC LAB, tj. dnia 29 listopada 2024 r. nie będzie już dostępny katalog treści Forum PC LAB. Do tego czasu Użytkownicy Forum PC LAB mają dostęp do swoich treści w zakładce "Profil", gdzie mają możliwość ich skopiowania lub archiwizowania w formie screenshotów.
  5. Administrator danych osobowych Użytkowników - Ringier Axel Springer Polska sp. z o.o. z siedzibą w Warszawie zapewnia realizację praw podmiotów danych osobowych przez cały okres świadczenia usług Serwisu Forum PC LAB. Szczegółowe informacje znajdziesz w Polityce Prywatności

Administrator informuje, iż wraz z zamknięciem Serwisu Forum PC LAB, dane osobowe Użytkowników Serwisu Forum PC LAB zostaną trwale usunięte ze względu na brak podstawy ich dalszego przetwarzania. Proces trwałego usuwania danych z kopii zapasowych może przekroczyć termin zamknięcia Forum PC LAB o kilka miesięcy. Wyjątek może stanowić przetwarzanie danych użytkownika do czasu zakończenia toczących się postepowań.

Temat został przeniesiony do archiwum

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

Krendzel

[PHP][MYSQL] Przesyłanie "select"

Rekomendowane odpowiedzi

Witam , otóż mam pewien problem z przesyłaniem formularza do bazy danych. Problem polega na tym że nie mam pojęcia jak przesłać dane z <select><option> do bazy danych. Mam podstawowy kod który przesyła mi tekst z pola input i to akurat działa ale z select nie potrafię tego zrobić.

 

Mam sobie kod odpowiedzialny za przesłanie formularza "dodaj.php"

<?php
require("connection.php");
connection();
$nick = $_POST['nick'];
$select = $_POST['select']; // To ma być odpowiedzialne za przesłanie z select option
$date = $_POST['date'];
$time = $_POST['time'];


$add_record = "INSERT INTO `base` VALUES('".$nick."','".$select."','".$date."','".$time."')";
mysql_query($add_record);
?>

 

 

Formularz.html


<form method="POST" action="dodaj.php" enctype="multipart/form-data">
    <table cellpadding="0">
        <tr>
            <th style="width: 100px">Select</th>
            <td>
                <select size="1" name="select">
                    <option value="option1">Option 1</option>
                    <option value="option2">Option 2</option>
            </select>
            
            </td>
        </tr>
        <tr>
            <th style="width: 100px">Nick</th>
            <td><input id="nick" name="nick" type="text" maxlength="10" /></td>
        </tr>
        <tr><td></td></tr>

       
    </table>
     <input type="submit" value="wyslij" class="submit" />
    </form>
[b]
[/b]

 

 

No i jeszcze plik który tworzy tabele.

 

<?php
require("connection.php");

connection(); 

$zapytanie  = "CREATE TABLE `base` (
`nick` VARCHAR(30) NOT NULL,
`option` VARCHAR(40) NOT NULL,
`date` VARCHAR(40) NOT NULL,
`time` VARCHAR(40) NOT NULL)";

mysql_query($zapytanie);

?>

 

 

I teraz pytanie , w jaki sposób to zrobić żeby po wybraniu "option1" była przesyłana wartość o bazy Option 1 lub w ogóle przesyłana do bazy ? Google za bardzo nie pomaga.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Do bazy będziesz miał przesyłane to, co masz w zawartości parametru "value", więc jeśli chcesz tam mieć "Option 1", to takie coś musisz wpisać. Poza tym możesz wypluć do przeglądarki zawartość zmiennej $select przez zwykłe echo i zobaczysz, czy coś tam w ogóle siedzi. Ale z tego co pamiętam, to właśnie w taki sposób zczytuje się selecta z _POST'a, więc powinno hulać.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

No właśnie problem z w tym że nie przesyła tej wartości value tak jakby to nie było podłączone pod submita.

 

Wszystkie inne takie jak data czas czy nick  ładnie wchodzi do bazy ale z option nie idzie..

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

print_r( $_POST ) ;

echo mysql_error() ;

 

przy wstawianiu danych do bazy wymieniaj kolumny

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dobra panowie , działa jak trzeba :) Jeszcze jedno pytanie , macie pomysł jak zrobić żeby dana wartość ( np. te option1 ) przy wyświetlaniu pokazywał obrazek zamiast wartości ?

 

Domyślam się będzie trzeba zrobić jakaś tablice w której będzie trzeba przypisywać link do danej wartości coś a'la option1 -> <img scr="option1.jpg">

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

jquery select option img src

chociaż pewnie wystarczy coś w rodzaju

$("#select").change

blablabla

$("#div").html( '<img src="xxx" />' ) ;

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

O boże co to ma być to coś nie można nazwać skryptem zero filtracji czego kolwiek poczytaj sobie o htmlspecialchars + trim + mysql_real_escape_string nie to żebym się czepiał ale jeśli już idziesz w stronę PHP to rób coś porządnie ,a najlepiej poczytaj o SQLi + XSS.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...