webForumDet fria alternativet

publicering av databasen

2 svar · 199 visningar · startad av clittan

clittanMedlem sedan feb. 20032 inlägg
#1

på min egen dator (lokalt) fungear databasen utmärkt, men hur går man tillväga när man lägger ut den på nätet. Vart ska man placera mysql-databas-filerna. Det tycks inte fungera på min dator om jag flyttar dom ifrån C:\mysql\data till någon annan mapp. Man måste väl länka dom till själva hemsidan (index.php eller url:en) på något sätt.

Web-TorMedlem sedan nov. 200013 890 inlägg
#2

Oftast brukar man inte flytta över några filer och man flyttar bara över själva datan. Man exporterar den från det ena stället för att sedan inportera den på det andra stället (som en vanlig textfil).

Hur ser koden ut som du använder för att koppla mot databasen?

clittanMedlem sedan feb. 20032 inlägg
#3
<html>
<head>
</head>
<body >
<?
function storedata(){
  global $namn;
  global $persnr;
  $conn = mysql_connect() or die("not connected");
  $database = mysql_select_db("databas");
  $sql = "INSERT INTO anv(namn,persnr) VALUES ('$namn','$persnr')";
  mysql_query("$sql");
  mysql_close($conn);
}

function wievdata(){
  $conn = @mysql_connect() or die("could not connect to database");
  $database = mysql_select_db("databas");
  $sql = "SELECT * FROM anv";
  $result = mysql_query("$sql");
  while($row = mysql_fetch_array($result)){
    echo "name: ".$row["namn"]."<br>"."persnr: ".$row["persnr"]."<br><br>";
  }
  mysql_close($conn);
}

if(!empty($namn)){
  storedata();
}

?>
<form method="post" action="index.php">
  Name: <input type="text" width="100" name="namn">
  Persnr: <input type="text" width="100" name="persnr">
  <input type="submit" value="Store">
</form>  
<? wievdata(); ?>

</body>
</html>

:OO hrmm.. inte så avancerat kanske men alla är vi nybörjare någon gång.
Sen kom jag att tänka ett par frågor till.
1. finns det något smidigt sätt att slippa de två globala variablerna?
2. if(!empty($namn)){
storedata();
}
Hur kan den koden fungera? jo visst jag har skrivit den själv men förstår ändå inte riktigt. För första gången man besöker sidan och koden exekveras bör ju variablen $namn inte ha något värde. Fjärde raden nedifrån kallar jag sedan på funktionen wievdata(), men när den körts igenom så börjar väl inte php-koden köras om på nytt? Så då förstår jag inte hur villkoret för if(!empty($namn)){
storedata();
} någonsin kan uppfyllas.
3. upptäckte precis (har inte tänkt på det innan) att namnen och personnr inte alltid läggs till sist i databasen. Ibland hamnar de längst upp och ibland längst ner.

Lite många frågor men NÅGON som kan förklarA? För det fungerar ju ändå... nja, förutom med att de inte hamnar på sista raden i databasen. :l

138 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)