10. august 2005 - 15:41Der er
24 kommentarer og 1 løsning
MySQL - Hente, gemme og ændre bestemte oplysninger via PHP
Hej eksperter! Jeg vil (som titlen antyder) gerne vide præcis hvordan man henter, ændrer og sletter oplysninger i specifikke celler i en tabel i en database via PHP (Jeg bruger MySQL som db)... Hvordan sletter man desuden alt indhold i en tabel? Det var lidt godt og blandet... Håber på hurtigt svar!
De fleste virksomheder har efterhånden bevist, at AI virker.
Pilotprojekter leverer resultater. Medarbejdere bruger generative AI-værktøjer. Nye use cases dukker op på tværs af organisationen.
Det vil være: SELECT feltnavn FROM tabelnavn SELECT * FROM tabelnavn SELECT feltnavn FROM tabelnavn WHERE felt = '$variabel'
Et par eksempler :)
Synes godt om
Slettet bruger
11. august 2005 - 13:18#5
Ok... Dit første eksempel henter.. Hvad? Dit andet henter det hele... Dit tredje henter... Et felt hvor der i samme serie/række/hvad-det-nu-hedder er et felt der hedder 'felt' og indeholder '$variabel'?
Mit første eksempel henter feltnavnet "feltnavn" fra tabellen med navnet "tabelnavn". Andet eksempel henter korrekt alle felter og række fra tabellen. Tredje henter feltet i række hvor et felt indeholder værdien $variabel. Det være sig f.eks. at du vil hente mail-feltet fra rækken, hvor brugernavnet er "jens". Så vil du få jens' mailadresse.
Synes godt om
Slettet bruger
11. august 2005 - 16:34#7
Så dit første eksempel henter feltnavn fra alle rækker? Og hvordan sætter man data ind?
1. Nej, en INSERT overskriver ikke, men indsætter en ny række.
2. Der er sådan set ingen forskel, bare 2 måder at opnå det samme. Personligt bruger jeg altid den første løsning, men det er op til én selv.
3. Ja, den vil hente feltnavn fra alle rækker. Det kan indsnævres på mange måde, bl.a. ved at angive en WHERE-sætning der begrænser din søgning.
Hvis du vil opdatere din tabel så hedder det UPDATE, og så ligner sætningen INSERT nr. 2. Altså f.eks.: UPDATE tabel SET `felt1` = '$variabel1', `felt2` = '$variabel2' WHERE id = 1
Synes godt om
Slettet bruger
12. august 2005 - 17:22#12
Og så oversrives den? (Bare send et svar!)
Synes godt om
Slettet bruger
12. august 2005 - 17:23#13
(*oversrives: overskrives)
Synes godt om
Slettet bruger
12. august 2005 - 17:56#14
Jeg kan ikke få det til at virke... Hvis du har en tabel med felterne 'bruger' og 'id', hvordan skal scriptet så præcist være hvis jeg vil udskrive indholdet 'bruger' i rækken hvor 'id' fx. er 'hf2ke'?
Med UPDATE så kan man godt sige at du overskriver. Eller nærmere opdaterer/retter felter i rækken.
Mht. udskrivningen tror jeg du mener:
<? //connect $q = mysql_query("SELECT bruger FROM tabel WHERE id = 'hf2ke'") or die(mysql_error()); while($row = mysql_fetch_array($q)) { echo $row['bruger']; } ?>
Synes godt om
Slettet bruger
13. august 2005 - 19:24#18
Er det nødvendigt at bruge $q? Kan man skrive:
<?php while($row = mysql_fetch_array(mysql_query("SELECT bruger FROM tabel WHERE id = 'hf2ke'"))) { echo $row['bruger']; } ?>
Det må du jo lade komme an på en prøve. Umiddelbart kan man nok, men jeg vil bestemt holde mig til den anden løsning. Bl.a. fordi at du nu ikke har mulighed for at smide or die(mysql_error()) på.
Synes godt om
Slettet bruger
14. august 2005 - 20:01#20
Ok, det gør jeg... Tak for din tålmodighed, nu fik jeg svar på alle mine spørgsmål!
$q = mysql_query("SELECT COUNT(*) FROM minTabel WHERE users = 'USER no 54'"); if(mysql_result($q, 0) > 0) { echo "Der findes en række med disse data"; }
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in c:\programmer\easyphp\www\scripts\opret database og tabel\make.php on line 11
det skriver den når jeg propper følgende stykke kode ind:
$q = mysql_query("SELECT COUNT(*) FROM mytb WHERE user = $user"); if (mysql_result($q, 0) > 0) { bla, bla... }else{ og noget andet... }
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.