Gå til innhold

Skrive og hente ut fra mySQL tabell


Anbefalte innlegg

Skrevet

Jeg skal ha en form som skal skrive (oppdatere) til en mySQL tabell.

Den tabellen skal hete setning og raden skal hete det samme..

 

Jeg skal også kunne skrive informasjonen ut på en side.

 

Altså, når jeg skriver Hei i formen, skal det komme Hei på siden.

Skriver jeg Hoho i formen, skal det komme Hoho på siden ;)

 

Noen som kan hjelpe meg med dette?

Bør være noe som jeg lærer av! :w00t::thumbup:

Videoannonse
Annonse
Skrevet

For å oppdatere er det bare å bruke UPDATE i stedet for INSERT. Jeg har jo laget/endret et script for deg før, skal ikke være vanskelig å endre det til å kunne oppdatere innlegg også. Bruk hodet, så skal det nok ikke ta så lang tid.

Skrevet

Jepp, du har laget ett script for meg før, har endret det så sterkt og forbedret det og endret så mye feil at jeg gidder nesten ikke begynne og redigere det..

*Finne en guide da..*

Skrevet (endret)

Hvorfor skal du lagre noe når det allikevel blir skrevet over neste gang du skriver noe nytt?

 

Kan jo gjøre det veldig enkelt med:

<form action="next.php" method="POST">
      <input type="text" name="input">
      <input type="submit" value="send">
</form>

 

<?php
$tekst = $_POST['input'];
$open = fopen("fil.txt", "r+");
       fwrite($open, $tekst);
       fclose($open);
?>

 

<?php
$tekst = file_get_contents("fil.txt");
       echo $tekst;
?>

Endret av endrebjorsvik
Skrevet (endret)

Det samme som endrebjorsvik gjør der med flatfil blir vel ca. dette med MySQL (uten tilkobling og sånt, bare selve input-koden):

<form action="next.php" method="POST">
     <input type="text" name="input">
     <input type="submit" value="send">
</form>

 

<?php
$tekst = $_POST['input'];
mysql_query("insert into innhold set tekst='$tekst'");
?>

 

<php
$row = mysql_fetch_array(mysql_query("select * from innhold"));
echo "$row['tekst']";

 

sånn ca. Må som sagt ha tilkobling til databasen og sånt før dette, men det kan du...

Men var vel uansett oppdatering du ville fram til? Da må du f. eks. sette inn

value='$row['tekst']'

i tekst-feltet i formen og sette inn update istedenfor insert i den andre kode-biten.

Endret av anners
Skrevet (endret)

Takk, skal se på det når jeg får tid :) :)

 

next.php

<?php
$brukernavn = $_SESSION['brukernavn'];

if (isset($brukernavn)) {
include("side/db.php");

$link = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("Kunne ikke koble til databasen.");
if (mysql_select_db ($mysql_db)) {

$tekst = $_POST['input'];
if (mysql_query("update into head set tekst='$tekst'")) { 
echo("Status ble oppdatert!"); 
}

else { 
echo("Error!"); 
}
}}
?>

 

 

skriv.php

<?php
include("side/db.php");

$link = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("Kunne ikke koble til databasen.");
if (mysql_select_db ($mysql_db)) {

$row = mysql_fetch_array(mysql_query("select * from head"));
echo("'$row['tekst']'");

} else { 
echo("FEIL!!");
}
?>

 

Error!

 

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /***/***/***/***/skrivut.php on line 8
Endret av goggen90
Skrevet (endret)
Takk, skal se på det når jeg får tid :) :)

 

 

Helt seriøst... Her driver du og syter og klager. Folk lager ferdige scripts til deg. Og det eneste du svarer er at du skal "Se på det når du har tid"...

 

Hva med å være litt mer takknemlig for at folk hjelper deg :):):)

 

 

(Edit: Så at du faktisk hjelper andre som står fast på forumet her så jeg slettet en del "stygge ting")

Endret av lobster
Skrevet

Hehe, jeg hjelper andre ja, hvorfor skulle jeg ikke?

 

Jeg skulle akkuratt ut da jeg så scriptet anners hadde laget så jeg måtte fly..

Jeg er veeeldig takknemmelig når noen hjelper meg og jeg får det til skikkelig :) (kansje det ikke alltid kommer like sterkt frem)..

Skrevet

Takk kakkle, virka litt bedre nå..

Kommer Status ble oppdatert! men det ligger ikke noe i databasen..

 

next.php

<?php
$brukernavn = $_SESSION['brukernavn'];

if (isset($brukernavn)) {
include("side/db.php");

$link = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("Kunne ikke koble til databasen.");
if (mysql_select_db ($mysql_db)) {

$tekst = $_POST['tekst'];
if (mysql_query("update head set tekst=$tekst")) { 
echo("Status ble oppdatert!"); 
}

else { 
echo("Error!"); 
}
}}
?>

 

Siden med form

<form action="next.php" method="POST">
    <input type="text" name="tekst" /> <!--value="'$row['tekst']'"-->
    <input type="submit" value="send">
</form>

 

Altså, siden som skal skrive ut blir helt blank!

Skrevet

Okei...

Ser nå at du har $_SESSION["brukernavn"] øverst. Du må vel starte session før du kan få tilgang til det som ligger i $_SESSION variabelen.

 

session_start() helt i toppen av scripet

Skrevet

La meg spørre...

Hvordan ser databasen ut nå ?

Har den allerede et "innlegg" ?

 

Du får altså opp meldingen "Status ble oppdatert" ?

 

Prøv med noen "debug" utprintinger. F.eks legg query setningen til en variabel, og skriv denne til skjerm, så ser du om den er slik du forventer at den skal være ?

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å
×
×
  • Opprett ny...