Avatar billede agora_live Nybegynder
15. januar 2012 - 20:21 Der er 5 kommentarer og
1 løsning

Hvordan indsætter jeg en update funktion her? PHP <-> MySQL base...

Hvordan kan jeg få indsat en update funktion i dette script? Således  at der bliver trukket ekstra information ud af basen når først der er blevet "logget ind"?

Den ser således ud i dag:

<?
$server = "xxxx";
$username = "xxxx";
$password = "xxxx";
$database = "xxxx";

if (isset($_POST['submit'])) {
  if ($_POST['navn'] == '' || $_POST['tlf'] == '') {
  echo "Du skal udfylde Navn og telefon som minimum!";
  exit;
  }
else {
$navn = $_POST['navn'];
$tlf = $_POST['tlf'];



$con = mysql_connect($server,$username,$password);
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db($database, $con);
mysql_query("UPDATE markers SET name = '$navn' || telefon = '$tlf'") or die(mysql_error());
}
}
?>
Også din formel herunder.


<form action="<? echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data">
Navn :  <input type="text" name="navn"><br>
Telefon : <input type="text" name="tlf"><br>
Adresse : ---> Her skal der så trækkes info fra databasen for at som så kan ændres af brugeren
<input type="submit" name="submit"><br>
</form>

Håber nogle har en ide som kan bruges jeg har prøvet at indsætte:

$result = mysql_query("SELECT = * FROM markers");
echo "<table border='1'>
<tr>
<th>Navn</th>
<th>Telefon</th>
<th>Adresse</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['navn'] . "</td>";
  echo "<td>" . $row['telefon'] . "</td>";
  echo "<td>" . $row['adresse'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

efter $result = mysql_query......

men får følgende fejl:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/www/vejen-online.dk/test/update_database2.php on line 33

Hvordan kan dette gøres?
Avatar billede olebole Juniormester
15. januar 2012 - 20:58 #1
<ole>

Den fejl opstår ikke i den kode, du har vist. Der står ikke noget i linje 33, som kan udløse den - og du inkluderer ikke noget. Det kan derfor ikke være den viste kode, du bruger. Prøv at vise den aktuelle kode  =)

/mvh
</bole>
Avatar billede olebole Juniormester
15. januar 2012 - 21:00 #2
- men denne linje giver til gengæld ikke nogen mening:

$result = mysql_query("SELECT = * FROM markers");

Hvad er tanken med lighedstegnet?
Avatar billede olebole Juniormester
15. januar 2012 - 21:02 #3
Denne SQL forstår jeg heller ikke:

"UPDATE markers SET name = '$navn' || telefon = '$tlf'"

Hvad skal den få databasen til at gøre?
Avatar billede agora_live Nybegynder
16. januar 2012 - 18:11 #4
Ideen med dette er at ved at indtaste navn og telefon nummer så trækker man automatisk sine yderligere informationen som man så i en form kan opdatere.

Jeg har siddet og kæmpet med at få dette til af fungere. Hvis jeg laver seperate scripts kan jeg godt få hentet info fra db, updateret db og oprettet nye brugere, men jeg kan ikke få det kombineret i et samlet script.

Er der nogen som kan henvise til et "færdigt" script som gør hvad jeg søger?
Avatar billede olebole Juniormester
16. januar 2012 - 18:21 #5
Du skal vel bare sætte dig ind i PHP- og ikke mindst MySQL-syntaks. Sålænge du ikke er inde i de mest grundlæggende ting - f.eks. at foretage en helt simpel SELECT fra en DB - nytter det ikke meget at lave det for dig. Det lærer du ikke noget af.

Hvad fik du ud af at slette lighedstegnet, som jeg skrev i #2?
Avatar billede agora_live Nybegynder
06. februar 2012 - 20:55 #6
Tak for hjælpen...
Avatar billede 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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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