Gå til innhold

Adde ting til tabell.


Anbefalte innlegg

Hei, kan veldig lite php, men holder på med en php-bok...

 

Skal lage en side med resultater for cs cuper. Admins må ha mulighet til å adde resultatet med en gang. Det blir da en vanlig tabell som inneholder lag, map, resultat, dato/tid osv.

 

Hvordan skal jeg adde resultat til den, f.eks. via et form? Eller hva som er lettest?

Lenke til kommentar
Videoannonse
Annonse

Hei,

 

Når du skal legge til ting i ein tabell så brukar du INSERT kommandoen i sql (Går ut frå at du brukar MySQL).

 

Litt meir avansert

Det er og viktig å hugse på å bruke mysql_real_escape_string på all brukar generert data som skal inn i ein database (Vist magic quotes er aktivert så må du hugse å bruke stripslashes først) for å forhindre at brukaren kan endre på sql spørringa og gjere ting han ikkje bør gjere.

 

Trur dette er ein fint liten artikkel som kan hjelpe deg

 

Håper dette hjelper deg vidare :)

Lenke til kommentar

Kan jeg ikke lagre resultatene i tabellen? At de lagres i html/css dokumentet liksom... Holder på å lære meg php&MySQL atm, så er relativt n00b:p

 

Hver rute i tabellen har en variabel med et eget navn, f.eks. $res_l4, som står for resultat, linje 4. Når noen skriver i et form at dfe vil legge til linje 4 i tabellen, og et resultat skriver scriptet noe som "$res_l4 = "16 - 14".

 

Er noe sånt mulig?

Lenke til kommentar
Gjest Slettet+142

Det som er mulig, er å lagre til en fil.

Altså, at det som brukeren skriver inn, lagres til en fil.

 

Og når tabellen "lages", henter man bare inn resultatene ifra filen :)

Lenke til kommentar

Her har du ett skript jeg lagde når jeg lærte meg php, lagde ett liga/cup system (kan sees her {for spesielt interesserte}, kan få hele koden om ønskelig). Her brukes en Mysql database.

 

PHP
<?php

#start innhold

echo "<div id='result'>n";

echo "<table cellspacing='0'>n";

 

#Table header 

//skriver ut overskriftsladen i tabellen

echo "<tr>

<th> #</th>

<th> Name</th>

<th> Games</th>

<th> Points</th>

<th> Wins</th>

<th> Losses</th>

<th> Adm loss</th></tr>n";

 

/*

lager oppslaget mot databasen, 

er allerede tilkoblet til basen tidligere i koden (vises ikke i dette utdraget

*/

$query "SELECT name,score,matches,win,loss,draw,admloss 

FROM NHAP_player 

ORDER BY score desc, matches asc, win desc, draw desc, loss desc";

 

//utfører oppslaget 

$result mysql_query($query,$link);

 

$i=1;

 

//lager en løkke som henter ut data/informasjon i fra database oppslaget

while ($row mysql_fetch_assoc($result))

/*

gjør en sjekk for å finne ut om $i er par eller oddetall.

sjekker om første bit er lik 1, 

alle oddetall vil ha først tall fra høyre lik 1 i ett binært tall

skriver da ut forskjellige class for å få forskjellig bakgrunnsfarge på radene

*/

 

 if ($i&1)

echo "<tr class='col2'>";

else

echo "<tr class='col1'>";

 

//skriver ut hver tabell rad med innhold

printf("<td>%d</td>

<td><div class='name'>%s</div></td>

<td>%d</td>

<td>%d</td>

<td>%d</td>

<td>%d</td>

<td>%d</td>

</tr>n",

$i,$row['name'],$row['matches'],$row['score'],$row['win'],$row['loss'],$row['admloss']);

 

//øker $i med 1

$i++;

}

echo "</table>n</div>n";

?>

Endret av crowly
Lenke til kommentar
Gjest Slettet+142

Hmm. php.net spanderer veldig lite tekst på &-operatoren :/

Example Name Result

$a & $b And Bits that are set in both $a and $b are set.

 

Så, om noen enkelt kan forklare hva den gjør, hva den er til nytte for, og hva den returnerer, blir jeg glad :)

 

Egentlig, så aner jeg veeldig lite om alle de bitvise operatorenene :(

Endret av Slettet+142
Lenke til kommentar
How to find if a number is odd or even?

In PHP I learn to use the MOD (%) operator. see below for an example: $i = 10;

if ($i % 2) {

echo "$i is odd";

} else {

echo "$i is even";

}

 

You can also use the PHP "&" operator that will give you better performance

You can use the PHP code like so:

 

$i = 10;

if ( $i&1 )

{

echo "$i is odd";

}

else

{

echo "$i is even";

}

Lenke til kommentar

&1 sjekker den første bit'en fra høyre i ett binært tall, f.eks 65 i binært er 1000001.

 

For de som ikke kan lese binære tall så tenk på 1 som på og 0 som av. Hver plass representerer ett tall i 10 tall systemet. Første tall (alltid fra høyre) er 1 eller 0, neste tall er 2 eller 0, så 4 - 8 - 16 - 32 - 64 osv, hvis det er 1 er verdien skrudd på, er det 0 er verdien skrudd av. I tilfellet 65, 1000001 så tenk 64+0+0+0+0+0+1.

 

Så i ett oddetall så vil alltid første bit fra høyre være 1.

 

1= 1

3= (1)1 [2+1]

5= (10)1 [4+0+1]

7= (11)1 [4+2+1]

9= (100)1 [8+0+0+1]

 

0= 0

2= (1)0 [2+0]

4= (10)0 [4+0+0]

6= (11)0 [4+2+0]

8= (100)0 [8+0+0+0]

 

Edit: Legger ved hele ligasystemet mitt, så kan du titte på det hvis du vil. Dette er mitt første php/html/css prosjekt så det er ikke sikkert at alle løsninger er de mest optimale og koden kanskje ikke av første klasse, men det fungerer. Alle må jo starte og lære ett sted, jeg begynte med dette ;)

Sjekk også readme fila for noen enkle instruksjoner på hva du må gjøre for å det til å fungere.

Edit: Send pm om du ønsker å se/få koden. Har fjernet linken da det ikke lenger ligger tilgjengelig.

Endret av crowly
Lenke til kommentar
Hmm. Jeg skjønte det idet du sa at den sjekket siste bit-en da, men :)

Utdypet litt med tanke på andre som kanskje ikke vet like mye om binært som deg ;)

Kan man ha noe annen nytte av &-operatoren enn å sjekke om det er odd?

8965507[/snapback]

Helt sikkert, men det har ikke jeg lært meg selv enda. :w00t:

Endret av crowly
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...