hulp gezocht bij get methode

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Pagina: « vorige 1 2 3 4 5 volgende »

Adoptive Solution

Adoptive Solution

23/06/2019 18:53:19
Quote Anchor link
Eerst de boel ophalen en daarna tonen.

Zoiets :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
include_once("includes/config.php");

$content_header = 'images/missing-ticket_header.jpg';

if (isset($_GET['tickets']))
{

    $ticket = $mysqli->real_escape_string($get);
    $get = $_GET['tickets'];
    $sql = "SELECT * FROM tickets WHERE gebruiker='$ticket'";
    $result = $conn->query($sql);
    if ($result->num_rows > 0)
    {

        if($row = $result->fetch_assoc())
        {

            $content_header = $row["ticket_header"]; // variabele met de afbeelding

            // kleurtjes laten zien

            echo "<pre>".print_r($row,true)."</pre>";
        }
    }

    else
    {
        echo "0 results";
    }
}

?>


<html>
<head>
<style>
* { padding:0;margin:0;}

.content-header {
    width:1900px;
    height:342px;
    background-image: url(<?php echo $content_header; ?>);
    background-repeat: no-repeat;
    }
</style>
</head>

<body>

<header class="content-header">  

</body>

</html>


EDIT : Variable aangepast vanweges verwachte verwarring
Gewijzigd op 23/06/2019 19:04:59 door Adoptive Solution
 
PHP hulp

PHP hulp

24/04/2024 18:06:26
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 18:55:33
Quote Anchor link
@Adoptive Solutions:
En dan een variabele met een _ in plaats van een - ;-)
 
Pascal klienstra

pascal klienstra

23/06/2019 19:08:40
Quote Anchor link
oke het is me nu gelukt nou is mijn vraag

een gebruiker maakt 2 tickets aan graspop en lowlands nou wil ik profiless.php?naam=plato&tickets=graspop
informatie afleest van de table tickets onder de naam plato maar als de gebruiker ook lowlands hebt gemaakt wil ik profiless.php?naam=plato&tickets=lowlands dat die database afleest van lowlands met de gebruiker plato hoe doe ik zo iets ?
 
Rob Doemaarwat

Rob Doemaarwat

23/06/2019 19:14:52
Quote Anchor link
Ik snap 'm even niet. Je doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT * FROM tickets WHERE gebruiker='$ticket'
, waarbij $ticket de naam van het festival uit de URL is. Dat is dus niet de gebruiker.

En wat jij wil zou je normaal met een join doen. Ik zou dus meer iets verwachten ala:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
select * from users u
  join tickets t on t.user_id = u.id and t.naam = '$ticket'
where u.naam = '$naam'

waarbij dat " and t.naam = '$ticket'" dan optioneel is. Laat je dat weg (omdat $ticket leeg is), dan krijg je alle "tickets".
Gewijzigd op 23/06/2019 19:16:45 door Rob Doemaarwat
 
Pascal klienstra

pascal klienstra

23/06/2019 19:23:37
Quote Anchor link
Afbeelding


dan zou ik het zo moeten doen


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
select * from users u
  join tickets t on t.id = u.id and t.titel = '$ticket'
where u.gebruiker = '$naam'
Gewijzigd op 23/06/2019 19:24:27 door pascal klienstra
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 19:32:14
Quote Anchor link
Als je dubbele veldnamen hebt over twee tabellen, zal je query stuklopen omdat deze dubbelzinnig zijn, en dus ambigious.

Dan zou ik geen * gebruiken, maar de tabellen en velden benoemen, dus bijv.:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT t.id, u.gebruiker FROM users u
  JOIN tickets t ON t.id = u.id AND t.titel = '$ticket'
WHERE u.gebruiker = '$naam'
Gewijzigd op 23/06/2019 19:35:30 door - Ariën -
 
Rob Doemaarwat

Rob Doemaarwat

23/06/2019 19:34:32
Quote Anchor link
Als t.id refereert naar gebruiker.id, dan wel. Maar dat lijkt me niet logisch (ik zou eerder verwachten dat t.id het unieke ID van het ticket is).

Ah, ik zie het al, het is ticket.gebruiker, en dat is gewoon de gebruikersnaam. Dan wordt het:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
select * from users u
  join tickets t on t.gebruiker = u.gebruiker and t.naam = '$ticket'
where u.gebruiker = '$naam'

Dit is allemaal geen denderende manier van een datamodel opzetten (normaal is het ID leidend om referenties op te bouwen).

Omdat je gebruikersnaam toch al volledig in de tickets tabel zit kun je ook gewoon:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
select * from tickets where gebruiker = '$naam' and ticket_titel = '$ticket'

Waarbij $naam dan "plato" is, en $ticket "pinkpop 2019" (om je voorbeeld van 18:48 te tonen).
 
Pascal klienstra

pascal klienstra

23/06/2019 20:24:05
Quote Anchor link
oke ik kan nou niet 2 gebruikers gebruiken om verschillende tickets te laten tonen hoe doe ik dat dan ?
en hoe zou ik het moeten opslaan
(normaal is het ID leidend om referenties op te bouwen). zoals dat
Afbeelding
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
    include_once("includes/config.php");

    if (isset($_GET['tickets']))
    {

        $naam = $_GET['naam'];
$ticket = $_GET['tickets'];

        $sql = "select * from tickets where gebruiker = '$naam' and ticket_titel = '$ticket'";
        
        $result = $conn->query($sql);
        
        if ($result->num_rows > 0) {
            
            if($row = $result->fetch_assoc()) {
              
            }

           ?>
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:29:45
Quote Anchor link
Dan gebruik je toch de ID nummers van de gebruikers in je ticket tabel?

Waarom pas je de beveiliging tegen SQL-injectie niet toe?
Gewijzigd op 23/06/2019 20:30:31 door - Ariën -
 
Pascal klienstra

pascal klienstra

23/06/2019 20:30:14
Quote Anchor link
de id moet dan als zelfde wezen dus ik zou in de table tickets
gebruiker_id er bij moeten zetten of ?

Toevoeging op 23/06/2019 20:31:58:

de id code van user table is niet het zelfde als tickets id hoe kan die weten bij welke naam die hoort
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:32:15
Quote Anchor link
Het id-nummer is leidend en dat is eigenlijk het enigste wat je nodig hebt om een gebruiker te identificeren aan een ticket. De gebruikersnaam kan je via een join uit de gebruikers tabel halen.

Een ticketID is heel wat anders dan een UserID, want een gebruiker is geen ticket!
Gewijzigd op 23/06/2019 20:33:16 door - Ariën -
 
Pascal klienstra

pascal klienstra

23/06/2019 20:33:57
Quote Anchor link
en hoe maak je zoiets dan met de query dat die wel de zelfde id geeft kan je een voorbeeld geven ongeveer ?
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:40:46
Quote Anchor link
Is er een reden dat je expliciet de gebruikersnaam wilt gebruiken in de URL en geen id-nummer? Of mag een id-nummer ook?
 
Pascal klienstra

pascal klienstra

23/06/2019 20:42:26
Quote Anchor link
id nummer mag ook als de gebruiker maar de tickets afleest van de get
dus gebruiker heeft
graspop
lowlands
dominator

profiless.php?naam=plato&tickets=Pinkpop%202019
profiless.php?naam=plato&tickets=lowlands

enzovoort
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:46:31
Quote Anchor link
Dan is er een JOIN nodig. waarbij je naam en tickets met $conn->real_escape_string(...) escaped, en dan de data ophaalt. Als het niet lukt zal ik straks even een opzetje maken. Hoewel er net al een voorbeeld gegeven is.
Gewijzigd op 23/06/2019 20:46:59 door - Ariën -
 
Pascal klienstra

pascal klienstra

23/06/2019 20:50:11
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

<?php
    include_once("includes/config.php");

    if (isset($_GET['tickets']))
    {

        $naam = $_GET['naam'];
        $ticket = $_GET['tickets'];
        $sql = "select * from users u
  join tickets t on t.gebruiker = u.gebruiker and t.naam = '$ticket'
where u.gebruiker = '$naam' "
;
        
 
       $result = $mysqli->real_escape_string($sql);
        
        if ($result->num_rows > 0) {
            
            if($row = $result->fetch_assoc()) {
              
            }

           ?>


zoiets ?
Gewijzigd op 23/06/2019 20:52:01 door pascal klienstra
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:52:35
Quote Anchor link
Nee, de SQL-injectie is niet goed. Je moet niet je hele SQL-string meegeven, maar de GET waardes.

En verder gebruik je nog geen id-nummering.
Gewijzigd op 23/06/2019 20:53:42 door - Ariën -
 
Pascal klienstra

pascal klienstra

23/06/2019 20:56:34
Quote Anchor link
zou je misschien voor mij zo een opzetje willen geven ?
 
- Ariën  -
Beheerder

- Ariën -

23/06/2019 20:57:51
Quote Anchor link
Ik zal zo even kijken.
 
Pascal klienstra

pascal klienstra

23/06/2019 21:23:43
Quote Anchor link
top zou mooi wezen

Toevoeging op 23/06/2019 22:31:47:

- Ariën - op 23/06/2019 20:57:51:
Ik zal zo even kijken.


kon je me nog helpen of morgen ?
 

Pagina: « vorige 1 2 3 4 5 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.