Thomasrn Seniormester
08. august 2019 - 02:21 Der er 2 kommentarer og
2 løsninger

giv en specifik spiller et ny holdid

har lavet en if sætning:
if ($holdid == 0)
og vil gerne have hvis den passer som den gør pt. (fordi alle spiller har 0 i holdid)
så vil jeg gerne have at den erstatter 0 med userid altså bruger der er ind på den side i får lige koden her giver måske lidt mere mening
<html>
<head>
  <title>Database</title>
  <link href="css/opretspiller2.css" rel="stylesheet" type="text/css">
  <meta charset="utf-8">
</head>
<body>
    <div class="container">
  <?php
  include("header.php");
  include("app.php");
  $app = new minAwesomeApp;
  $app->ErDuLoggetPaa();

$sid = $_GET['sid'];
$holdid = $_GET['holdid'];
echo $sid;
echo $holdid;
$userid = $app->userData['userId'];
if ($holdid == 0){
"UPDATE spillere SET $holdid=$userid";
}
?>

så det er  efter if ($holdid == 0) jeg ikke ved hvad man skriver for at erstatte 0 med userid
Slater Ekspert
08. august 2019 - 09:13 #1
Du har den næsten, som jeg ser det. Der er bare et dollartegn for meget ($holdid i SQL'en skal bare være holdid, for det er ikke en PHP-variabel), og så skal du fortælle SQL'en hvilken spiller det er der skal ændres.

Hvis jeg kan antage at $sid er spillerid, og at der er en id-kolonne i spillere-tabellen, så bliver det noget i stil med "update spillere set holdid=$userid where id=$sid"

Husk dog at denne måde åbner det for SQL injections, da du sætter data der kan ændres direkte ind i en SQL-sætning. Det skal enten saniteres eller parameteriseres. At sanitere her er dog nemt da begge er tal, så man kan bare sige
$sid = (int)$_GET['sid']; og $holdid = (int)$_GET['holdid'];
Dette er sikkert, men problemet ved denne metode er at man kan glemme det fremover. Bedre altid at bruge parametre.
michael_stim Ekspert
08. august 2019 - 09:15 #2
Denne:

UPDATE spillere SET $holdid=$userid

Skal nok være:

UPDATE spillere SET holdid=$userid

Ellers står der jo:

UPDATE spillere SET 0=7  //Hvis nu userid er 7
Thomasrn Seniormester
08. august 2019 - 14:30 #3
Har ændret den til:

if ($holdid == 0){
"UPDATE spillere SET holdid=$userid WHERE id=$sid";
echo "hej";
}

Har lavet en echo hej for at se om den printer det og gør den hver gang men den ændre ikke mit holdid til userid i databasen kan i se om der er noget jeg har skrevet forkert
michael_stim Ekspert
08. august 2019 - 14:42 #4
Men eksekverer du din UPDATE nogle steder? Som det er nu er det bare en tekst. Hverken variabel eller databasekommando.
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Microsoft opgiver milliardkøb af gamer-chatplatform med tusindvis af danske brugere
I marts forlød det, at Microsoft var svært interesseret i at købe chatplatformen Discord for over 10 milliarder dollar. Men planen er tilsyneladende gået i vasken.
CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
White paper
Infrastruktur: Byg et velfungerende Data Estate i otte trin
Mange virksomheder trækker på så mange og righoldige datakilder, at det bliver stadig sværere at holde rede på alle de informationer, man har. Samtidig lever et traditionelt data warehouse sjældent op til hverken de aktuelle eller – i særdeleshed – fremtidige krav fra forretningen. Løsningen er at udvide til en egentlig Data Estate; et stykke kritisk infrastruktur som gør det muligt at opbevare, organisere, konsolidere og analysere organisationens samlede datamængde. Denne hvidbog giver et samlet billede af, hvordan man gennem otte trin bevæger sig mod at implementere og drage nytte af en Data Estate. Samt hvordan du prioriterer indsatsen, så den giver størst værdi for forretningen.