Avatar billede tinebn Nybegynder
31. marts 2011 - 14:38 Der er 10 kommentarer og
1 løsning

hvordan får jeg sql sætningen til at sende den valgte linie/felt

Hej

er nået så langt nu - og gået i stå igen

hvordan får jeg sql sætningen til at sende den valgte linie/felt og ikke kun sende det sidste felt som er hentet ind

er kommet frem til at jeg må mangle noget i dette stk kode ??
while($row = mysql_fetch_array($svar,MYSQL_BOTH))

print_r viser mig dette uanset valg fra liste

Array ( [id] => 30 [username] => tine [logo] => images/bg.jpg [firma] => landbrugs-nyt [webaddresse] => http://www.landbrugs-nyt.dk [type] => avis )

fulde kode er .:

-----------------------------------------------------------------
$svar =    mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());             
echo"<form name=\"avis\" method=\"post\" action=\"avislog.php\">";   
    echo"<table>";
    echo "<tr> <th></th><th></th><th></th> <th></th> </tr>";
// keeps getting the next row until there are no more to get
    while($row = mysql_fetch_array($svar,MYSQL_BOTH))
    {
   
print"<tr><td>
<img src=".$row['logo'].">
</td>
<td>".$row['firma']."</td>
<td><a href =".$row['webaddresse'].">webaddresse</td>
<td>
</td><input type=\"hidden\" name=\"id\" value=".$row['id']." >
<input type=\"hidden\" name=\"username\" value=".$_SESSION['username']." >
<input type=\"hidden\" name=\"logo\" value=".$row['logo']." >
<input type=\"hidden\" name=\"firma\" value=".$row['firma']." >
<input type=\"hidden\" name=\"webaddresse\" value=".$row['webaddresse']." >
<input type=\"hidden\" name=\"type\" value=".$row['type']." >
<td><input type=\"submit\" value=\"tilfoj\" ></td>
</tr>";
}
print"</form></table>";
?>
<?php

$id = $_POST['id'];
$username =$_SESSION['username'];
$logo = $_POST['logo'];
$firma = $_POST['firma'];
$webaddresse = $_POST['webaddresse'];
$type = $_POST['type'];
print_r($_POST);
$var = mysql_query("INSERT INTO postkasse(id,username,logo,firma,webaddresse,type)
VALUES('$id','$username','$logo','$firma','$webaddresse','$type')");

?>
------
Avatar billede patrickreck Nybegynder
31. marts 2011 - 15:04 #1
while($row = mysql_fetch_array($svar))
ville være mit umiddelbare gæt
Avatar billede tinebn Nybegynder
31. marts 2011 - 16:16 #2
hej
det har jeg kørt med indtil nu , virker ikke

giver samme output :-((
31. marts 2011 - 21:42 #3
Lad mig lige vaere sikker paa at jeg forstaar problemet.  Du koerer denne kode:

$svar = mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());

og saa indeholder $var kun et enkelt resultat, nemlig id =>30, username =>tine, o.s.v.?

Den enkleste forklaring er naturligvis at tabellen links kun indeholder den ene raekke hvor type = 'avis'.  Hvis du siger:

$svar = mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());
$antal = mysql_num_rows($var);
echo $antal;

hvad faar du saa skrevet ud?  Hvis tallet er stoerre end 1, for eksempel 7, saa SKAL denne kode skrive de 7 raekker ud, ellers er det forhekset:

$svar = mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());
while($row=mysql_fetch_array($var))
{
  echo $row['id'] . " - " . $row['username'] . " - " . $row ['logo'] . " - " . $row['firma'] . " - " . $row['webaddresse'] . " - " $row['type'] "<br>";
}
Avatar billede tinebn Nybegynder
01. april 2011 - 08:15 #4
øhhh

jeg har flere aviser i  rækken, og de kommer alle op, så jeg kan tilføje med tilføj knap, men den tager den sidste avis og ligger i min database, som er landbrugsnyt id=30 som er det højeste id blandt aviserne..

Synes jeg har læst at det er fordi der ikke er et stop mellem hver linie, men aner ikke hvordan jeg sætter kode ind i
while($row=mysql_fetch_array($svar)) så den stopper op ud fra valgte felt

jeg har lagt siden ud .. så hvis du vil se, hvad mit problem er kan jeg skrive linket her ??
Avatar billede tinebn Nybegynder
01. april 2011 - 08:33 #5
dette er output fra din kode :-) og der er sørme en med nummer id 84

84 - - images/bg.jpg - Børsen - http://borsen.dk/ - avis
5 - - images/bg.jpg - BT - http://www.bt.dk/ - avis
6 - - images/bg.jpg - Ekstrabladet - http://ekstrabladet.dk/ - avis
14 - - images/bg.jpg - Lollands-Posten - http://www.lollands-posten.dk - avis
18 - - images/bg.jpg - Fritidsnyt - Lolland - http://www.fritidsnyt.dk - avis
17 - - images/bg.jpg - Ugeavisen - guldborgsund - http://www.ugeavisen-guld.dk - avis
29 - - images/bg.jpg - Folketidende - http://www.folketidende.dk - avis
30 - - images/bg.jpg - landbrugs-nyt - http://www.landbrugs-nyt.dk - avis
Avatar billede tinebn Nybegynder
01. april 2011 - 08:41 #6
og kode giver nummer 8
01. april 2011 - 10:03 #7
Ok, saa dit dataudtraek fra tabellen 'links' er ok.  Det er naar du derefter vil indsaette en udvalgt raekke i tabellen postkasse at det gaar galt.  Det var mig ikke helt tydeligt.

Som resultat skulle du saa faa en tabel med 8 raekker, hver med logo, webadresse, og en 'tilfoej' knap plus 5 hidden variabler.  Problemet er nok at du placerer alle tabellens raekkerne indenfor en enkelt formular.  Du skal lave en selvstaendig formular for hver raekke, for eksempel saaledes:

$svar = mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());
echo "<table>";
while($row = mysql_fetch_array($var))
{
  echo <tr>;
  echo "<form name='avis' method='post' action='avislog.php>";
  echo "<td><img src=" . $row['logo'] . "</td>";
  echo "<td><a href=" . $row['webaddresse'] . ">webadresse</a></td>";
  echo "<td>";
  echo "<input type='hidden' name='id' value= " . $row['id'] . ">";

  ..de fire andre hidden inputs...
  echo "<input type='submit' value='tilfoej'>";
  echo "</td>";
  echo "</form>";
  echo "</tr>";
}
echo "</table>";

Dette er ikke testet, men det skulle virke.  Proev det og fortael hvordan det gik.

Jeg opretter dette som svar fordi jeg tror det loeser problemet.
Avatar billede tinebn Nybegynder
01. april 2011 - 10:51 #8
øhh

Når du skriver jeg skal gøre sådan
:
Du skal lave en selvstaendig formular for hver raekke, for eksempel saaledes:
mener du, at jeg skal lave 8 formular  med de samme felter 8 gange... så hvis jeg har et udtræk med 30 stk aviser skal det gentages 30 gange etc? for at fungere ??
Avatar billede tinebn Nybegynder
01. april 2011 - 11:18 #9
;-)) Tak nu forstod jeg det,det var min form jeg skulle sætte inden for tuborg og nu virker det - nu er der kun den tilbage, at den opretter et tomt row i databasen postkasse, når jeg vælger avis ude i menubjælken - Array ( )
men må heller opretter et nyt spørgsmål. :-)

koden er så blevet til

<?php
$svar =    mysql_query("SELECT * FROM links WHERE type='avis'") or die(mysql_error());             

    echo"<table>";
    echo "<tr> <th></th><th></th><th></th> <th></th> </tr>";
// keeps getting the next row until there are no more to get
    while($row = mysql_fetch_array($svar))
    {

echo"<form name=\"avis\" method=\"post\" action=\"avislog.php\">";   
echo"<tr><td>";
echo"<img src=".$row['logo'].">";
echo"</td><td>".$row['firma']."</td>";
echo"<td><a href =".$row['webaddresse'].">webaddresse</td>";
echo"<td></td><input type=\"hidden\" name=\"id\" value=".$row['id']." >";

echo"<input type=\"hidden\" name=\"username\" value=".$_SESSION['username']." >";
echo"<input type=\"hidden\" name=\"logo\" value=".$row['logo']." >";
echo"<input type=\"hidden\" name=\"firma\" value=".$row['firma']." >";
echo"<input type=\"hidden\" name=\"webaddresse\" value=".$row['webaddresse']." >";
echo"<input type=\"hidden\" name=\"type\" value=".$row['type'].">";
echo"<td><input type=\"submit\" value=\"tilfoj\" ></td>";
echo"</form>";
echo"</tr>";
}
echo"</table>";
?>
<?php

$id = $_POST['id'];
$username =$_SESSION['username'];
$logo = $_POST['logo'];
$firma = $_POST['firma'];
$webaddresse = $_POST['webaddresse'];
$type = $_POST['type'];
print_r($_POST);
$var = mysql_query("INSERT INTO postkasse(id,username,logo,firma,webaddresse,type)
VALUES('$id','$username','$logo','$firma','$webaddresse','$type')");
01. april 2011 - 13:50 #10
Jamen det var godt det virkede.  (Jeg har selv ved lejlighed lavet samme fejl, derfor kendte jeg loesningen da jeg foerst havde forstaaet problemet.)

Saa faar vi, naar du kommer saa langt, kikke paa dit naeste spoergsmaal.  Jeg vil foreslaa at du goer lidt mere ud af at forklare problemet, saasom:  Jeg har denne kode.... naar jeg goer saadan forventer jeg det og det.  I stedet faar jeg det og det...
Avatar billede tinebn Nybegynder
04. april 2011 - 07:55 #11
:-))

ja ,jeg har tænkt over det med at forklarer mit "problem" rigtigt.. giver det et forsøg med at vende spørgsmålet om næste gang :-)))

Mange mange 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