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

Przesyłanie zmiennych sesyjnych w zależności od wybranego linku

42 Warsaw Coding Academy
0 głosów
618 wizyt
pytanie zadane 21 maja 2018 w PHP przez szachovy Początkujący (270 p.)

Witam, robię jako projekt forum internetowe i  mam problem z przesłaniem konkretnej zmiennej do danego pliku pod konkretnym linkiem. Próbowałem wielu metod jednakże większość z nich kończy się ustaleniem tej samej zmiennej sesyjnej we wszystkich linkach i wynosi ona ostatnie id zapytania lub wyświetla błędy.

<?php

require_once "connect.php";
$connection = @new mysqli($host, $db_user, $db_password, $db_name);
if ($result = $connection->query("SELECT * FROM ctopics"))
{
    #wypisuje całą tabele z bazy danych
    $amount = $result->num_rows;
    $n = 1;

        echo '<table style="width:100%; border: 1px slateblue">
    <tr>
        <th>id</th>
        <th>user</th>
        <th>topic</th>
        <th>discussion</th>
    </tr>
    ';while($amount != 0)
{

    echo '<tr/>';
    $row = $result->fetch_assoc();

        echo '<td>';
        echo $row['id'];
        '</td>';
        echo '<td>';
        echo $row['user'];
        '</td>';
        echo '<td>';
        echo $row['topic'];
        '</td>';
        echo '<td>';
        #po naciśnięciu na ten link zostane przekierowany do dyskusji
        #stron dyskusji bedzie tyle co kolumn w bd
        #linki działają dobrze
        echo "<a href=$n.php>LINK</a>";
        '</td>';

        echo '<br/><br/>';

        echo '</tr>';
        #i tutaj główna trudność 
    $_SESSION['id'] = $n ?????
    #ustawia sie to na ostatnie $n czyli tyle ile jest wierszy w tabeli a jeżeli zrobie
    $_SESSION[$n] = $n ????
    $_SESSION['id'] = $_SESSION[$n];
    #to zmienna $n w innym pliku jest nieznana
        
    $amount = $amount - 1;
    $n += 1;
};'
</table>';

a to przykładowy plik dyskusji gdzie chce zfetchowac dane dyskusji w zależności od klikniętego linku

<?php
session_start();
require_once "connect.php";

#tutaj problem z konkretnym przyniesieniem id
$id = $_SESSION['id'];

$connection = @new mysqli($host, $db_user, $db_password, $db_name);
#gdzie potem sie do tego odwoluje tu
    if($result = $connection->query("SELECT * FROM ctopics WHERE id = $id ??????"))
    {
        #i fetchuje konkretne dane
        $row = $result->fetch_assoc();
        echo "From : ".$row['user'];
        echo '<br/><br/>';
        echo $row['topic'];
    }
?>

Byłbym bardzo wdzięczny za pomoc. Jeżeli się nieda to prosiłbym o podsunięcie mi innego możliwego rozwiązania.W razie niejasności proszę pytać.

1 odpowiedź

+1 głos
odpowiedź 21 maja 2018 przez Kacper Sas Dyskutant (8,460 p.)
wybrane 21 maja 2018 przez szachovy
 
Najlepsza
Nie lepiej jeden skrypt odpowiedzialny za dyskusję, który w zależności od id przesłanym w linku metodą GET wyrzuca dane na ekran? (np. topic.php?id=23)
komentarz 21 maja 2018 przez szachovy Początkujący (270 p.)

Działa, dzięki wielkie, nie wiedziałem, że można w linku zawierać jakieś konkretne informacje (po tym pytajniku) jak dałem 

<a href=$n.php?id=$n>LINK</a>

to w pliku od dyskusji dałem 

$id = $_GET['id'];

i w zapytaniu 

SELECT * FROM ctopics WHERE id = $id

to zadziałało.

komentarz 21 maja 2018 przez Kacper Sas Dyskutant (8,460 p.)
edycja 21 maja 2018 przez Kacper Sas
echo "<a href=\"topic.php?id=$n\">LINK</a>";

Myślałem bardziej o takim podejściu :)

Wtedy miałbyś tylko jeden plik (topic.php) odpowiedzialny za wypluwanie danych na ekran.

Podobne pytania

+1 głos
2 odpowiedzi 359 wizyt
pytanie zadane 14 lutego 2018 w PHP przez hiper007 Stary wyjadacz (11,270 p.)
0 głosów
3 odpowiedzi 308 wizyt
pytanie zadane 15 stycznia 2022 w JavaScript przez Jacek Śmiel Użytkownik (510 p.)
0 głosów
1 odpowiedź 265 wizyt
pytanie zadane 16 lipca 2017 w PHP przez sapero Gaduła (4,100 p.)

93,379 zapytań

142,380 odpowiedzi

322,533 komentarzy

62,734 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

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...