• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Problem z przesyłaniem danych do bazy

Object Storage Arubacloud
0 głosów
621 wizyt
pytanie zadane 12 października 2015 w PHP przez Tomgrabal Początkujący (380 p.)
zamknięte 12 października 2015 przez efiku

Pomóżcie, bo zaraz trafi mnie... mam problem z taką banalną rzeczą jak przesyłanie danych do bazy. Nie wiem o co biega, robiłem to już kilkanaście razy i wszystko hulało, a teraz siedzę nad tym od weekendu i za cholerę nie dodaje mi głosu.

Skrypt:

<?php
require_once ('admin/connect.php');

if(isset($_GET['sportowiec_id'])) {
	
$sylwetka_id = $_GET['sportowiec_id'];

echo "<form action='dodaj_glos.php?sportowiec_id='$sylwetka_id' method='POST'>
		<input type='hidden' name='oddane_glosy'/>
		<input type='submit' name='zaglosuj' value='Zagłosuj'/>
</form>";
}

if(isset($_POST['zaglosuj'])){

$oddane_glosy = $_POST['oddane_glosy'];

$zaglosuj = "UPDATE sportowiec SET oddane_glosy=oddane_glosy+1 WHERE sylwetka_id = '".$sylwetka_id."'";
	
	$run_zaglosuj = mysqli_query($db, $zaglosuj);
	
	if($run_zaglosuj){ 
		
		 echo "<script>alert('Twój głos został oddany.')</script>";
		}
	}
?>

Gdy klikam "Zagłosuj" wyskakuje mi powyższy alert, ale w bazie danych nadal widneje zero głosów. Co może być???

komentarz zamknięcia: Problem rozwiązany.

4 odpowiedzi

+1 głos
odpowiedź 12 października 2015 przez Tomgrabal Początkujący (380 p.)
Ale ze mnie debil, z "form action" usunąłem, a z linka nie, no po prostu idiota!!! Teraz już wszystko śmiga pięknie. WIELKIE DZIĘKI ZA POMOC i sorry za moją ślepotę.

Temat do zamknięcia.
komentarz 12 października 2015 przez emSon Stary wyjadacz (10,480 p.)
temat sobie sam musisz zamknąć :D
0 głosów
odpowiedź 12 października 2015 przez Hatter Gaduła (3,180 p.)
W zapytaniu spróbuj dodać akcent czyli `. Próbuj zaakcentować nazwę tabeli, nazwę pola, wartość itd. Sprawdź też czy wszystkie nazwy się zgadzają.
0 głosów
odpowiedź 12 października 2015 przez furas Maniak (53,800 p.)
Weź jakieś narzędzie na pracy bezpośrednio w bazie i sprawdź tam czy Twoje zapytanie wykonuje to co trzeba czy też powoduje problem.
0 głosów
odpowiedź 12 października 2015 przez Tomgrabal Początkujący (380 p.)
Ok, dzięki, spróbuję.

Zauważyłem również, że gdy usunę ten fragment kodu:WHERE sylwetka_id='$sylwetka_id', to wtedy dodaje do bazy, lecz do wszystkich id równocześnie, to też mnie nie urządza.
komentarz 12 października 2015 przez Tomgrabal Początkujący (380 p.)
A taką mam konstrukcję tabeli w bazie:

CREATE TABLE IF NOT EXISTS `sportowiec` (
  `sylwetka_id` int(10) NOT NULL,
  `image` varchar(50) NOT NULL,
  `imie_nazwisko` varchar(50) NOT NULL,
  `dyscyplina` varchar(50) NOT NULL,
  `o_sportowcu` text NOT NULL,
  `oddane_glosy` int(10) NOT NULL DEFAULT '0',
  ) ENGINE=MyISAM AUTO_INCREMENT=167 DEFAULT CHARSET=utf8;
komentarz 12 października 2015 przez furas Maniak (53,800 p.)
Tabela nie ma tu żadnego znaczenia w tym problemie.

Problem jest, że gdzieś po drodze gubisz wartość, która powinna być przypisana do

sportowiec_id=

Może wywołujsze tą stronę już z "?sportowiec_id="
zamiast z "?sportowiec_id=numer_sportowca"

---

Przy obecnej postaci zapytania SQL nie ma potrzeby korzystać z $oddane_glosy i można to ukryte pole całkiem pominąć w formularzu.
komentarz 12 października 2015 przez Tomgrabal Początkujący (380 p.)

Ten cały skypt mam w colorboksie, a link, który go wywołuje jest w innym pliku i wygląda tak:

<a class='btn btn-primary' href='dodaj_glos.php?sportowiec_id='$sylwetka_id'>Zagłosuj</a>

Czy to ma jakieś znaczenie???

komentarz 12 października 2015 przez writen Nałogowiec (29,060 p.)

Tak. Po prostu usuń ten niepotrzebny apostrof przed $sylwetka_id.

komentarz 12 października 2015 przez Tomgrabal Początkujący (380 p.)
Ale ze mnie debil, z "form action" usunąłem, a z linka nie, no po prostu idiota!!! Teraz już wszystko śmiga pięknie. WIELKIE DZIĘKI ZA POMOC i sorry za moją ślepotę.

Temat do zamknięcia.

Podobne pytania

0 głosów
2 odpowiedzi 1,292 wizyt
0 głosów
0 odpowiedzi 182 wizyt
pytanie zadane 14 maja 2016 w PHP przez Headhunter Gaduła (4,450 p.)
0 głosów
3 odpowiedzi 721 wizyt
pytanie zadane 26 sierpnia 2016 w PHP przez ShadoWs Bywalec (2,800 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...