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

php - ankieta na najladniejsze imie

Object Storage Arubacloud
0 głosów
187 wizyt
pytanie zadane 2 marca 2021 w PHP przez domkub12 Początkujący (480 p.)
<?php
session_start();
$imie = $_GET['imie'];


	setcookie($imie, '1', time() + 3); // 86400 = 1 day	
	

		
?>

<!DOCTYPE HTML>
<html lang = "pl">
<head>
<meta charset = "utf-8"/>
</head>
<header>
<?php
			echo "<h1>Witaj w głosowaniu: $imie</h1> ";
?>
</header>
<body>
<main>
 
     <form method="post">
            
            <label for="pierwsza"> Twoja odpowiedź: </label>
            <input type="text" size="10" id="text" name="text">
            </br></br>
            <input type="submit" id="przeslij" name="przeslij" value="Sprawdź"/>
			<?php 			
			echo '<br><a href="usun.php">Wyloguj</a>';
			?>
</br></br>


<?php
		if(isset($_POST['text'])){
			$text = $_POST['text'];}
                 
        if(isSet($_COOKIE)){
                if(count($_COOKIE)==1) {
                        echo("</br>");
                        $plik =  fopen('plik1.txt','a+');
                        fwrite($plik, $text);
                        fwrite($plik, ", ");
                        readfile('plik1.txt');  
                        fclose($plik);
                }else{
                        print("Oddałeś już głos!");
                        print("Cookies are disabled.");
                        session_destroy();
                }
       
        }else{
                print("sesja skończona");
                session_destroy();
        }
?>

Mam problem ze cały czas pokazuje mi ze uzytkownik oddal juz gos. Staralem sie zrobic program w ktorym uzytkownik moze oddac głos tylko 1 raz + brakuje mi skryptu na wyrzucenie z sessji kiedy uzytkownik nie jest aktywny , z gory dziekuje za kazda pomoc

komentarz 2 marca 2021 przez Michał Kazula Pasjonat (19,540 p.)
Moim zdaniem logika PHP jest w złym miejscu. Przeżyć ją wyżej przed HTML.

Po drugie pewny jesteś że session_destroy usuwa twój cookies?

Po trzecie staramy się nie mieszać kodu PHP i HTML

1 odpowiedź

0 głosów
odpowiedź 3 marca 2021 przez niezalogowany
edycja 3 marca 2021

Funkcja session_destroy() niszczy aktualną sesję a do przechowywania odpowiedzi używasz cookie. Żeby wyczyścić cookie możesz użyć setcookie($imie, null, 1).

pozatym:

Znacznik <br> jest nieparzysty (nie ma otwarcia i zamknięcia) czyli powinno być <br> lub <br /> zamiast </br>

Zamiast

echo "<h1>Witaj w głosowaniu: $imie</h1> ";

jeżeli do h1 doszły by jakieś atrybuty było by coraz mniej czytelne. Można użyć na przykład:

<h1>Witaj w głosowaniu: <?= $imie ?></h1> 

jeżeli używasz cookie a nie sesi to nie ma potrzeby iniciowania sesi (session_start())

Podobne pytania

+1 głos
1 odpowiedź 233 wizyt
pytanie zadane 9 maja 2021 w PHP przez Filipczak Gaduła (4,020 p.)
0 głosów
0 odpowiedzi 294 wizyt
pytanie zadane 27 stycznia 2020 w PHP przez veryape Użytkownik (580 p.)
0 głosów
1 odpowiedź 1,220 wizyt
pytanie zadane 4 listopada 2019 w PHP przez jared Gaduła (3,600 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!

...