---
title: "Variabel har inget värde efter form"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/77532-variabel-har-inget-värde-efter-form"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "raki"
published: "2003-05-20T08:43:57.000Z"
updated: "2003-05-20T15:26:01.000Z"
replies: 4
views: 302
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/77532-variabel-har-inget-värde-efter-form"
---

# Variabel har inget värde efter form

## #1 — raki, 2003-05-20T08:43Z

När jag klickar på submit första gången får inte year och month något värde, andra gången man klickar däremot får den sitt värde.

Nån som vet vad jag kan göra?

Det funkar ju om jag sättre method="get" men då skickar den ju med allt, ser ut såhär då:
?year=2001&month=01&visa.x=30&visa.y=10

koden:

```php
										<table border="0" cellspacing="0" cellpadding="0">
                                            <form action="?visa=yes&year=<?=$year?>&month=<?=$month?>" method="post">
                                              <tr> 
                                                <td>&Aring;r:
												<?php
												$date = date("Y");
												
												echo "<select name=\"year\">";
												
												for ($i = 2001; $i <= $date; $i++) {
												echo "<option value=\"$i\">$i</option>";
												}
												echo "</select>";
												$sortera = "yes"
												?> 
												</td>
                                                <td>M&aring;nad:
												<select name="month">
												<option value="01">Januari</option>
												<option value="02">Februari</option>
												</select></td>
												<td><input name="visa" id="visa" type="image" src="img/content_submit_skicka.gif"></td>
                                              </tr>
                                            </form>
                                          </table>
										  </td>
                                        <td>&nbsp;</td>
                                      </tr>
                                      <tr> 
                                        <td width="3">&nbsp;</td>
                                        <td> <table width="100%" border="0" cellspacing="0" cellpadding="0">
                                            <?php
										include("_phpstyles/php_styles.php");
										
										if($visa == "yes") {
										$sql = mysql_query("SELECT *,DATE_FORMAT(datum, '%Y-%m-%d (%H:%i)') as tid FROM nyheter WHERE DATE_FORMAT(datum,'%Y')='{$_GET['year']}' AND DATE_FORMAT(datum,'%m')='{$_GET['month']}'");
										}else{
										$sql = mysql_query("SELECT *,DATE_FORMAT(datum, '%Y-%m-%d (%H:%i)') as tid FROM nyheter ORDER BY id DESC limit 3");
										}
											while ($row = mysql_fetch_array($sql)) {
												$id		= $row['id'];
												$rubrik	= $row['rubrik'];
												$text	= $row['text'];
												$email	= $row['email'];
												$tid	= $row['tid'];
												$namn	= $row['namn'];
								
											$text 	= styles($text);
											?>
                                            <tr> 
                                              <td><img src="img/content_icon_paper.gif" width="7" height="9"><span class="rubrik"> 
                                                <?=$rubrik?>
                                                </span></td>
                                              <td>
                                                <?=$tid?>
                                              </td>
                                            </tr>
                                            <tr> 
                                              <td colspan="2"><?=$text?></td>
                                            </tr>
                                            <tr> 
                                              <td height="10" colspan="2">&nbsp;</td>
                                            </tr>
                                            <? } ?>
                                          </table>
```

Permalänk: https://www.webforum.nu/p/77532

## #2 — Peeer, 2003-05-20T09:50Z

```php
<form action="?visa=yes&year=<?=$year?>&month=<?=$month?>"
```

$month och $year har ju inget värde innan formuläret postats. De hämtar sina värden ifrån just formuläret, och kan således inte ha några värden innan det är postat. Vill du ha ut de värdena men inte använda method="get" så är det nog ett javascript du söker.

Permalänk: https://www.webforum.nu/p/1056710

## #3 — raki, 2003-05-20T10:12Z

Jag löste det  :bire

Permalänk: https://www.webforum.nu/p/1056721

## #4 — @nders, 2003-05-20T10:19Z

> **raki skrev:**
>
> Jag löste det  :bire

Och hur?

Problemlösningar skall återvinnas. :)

Permalänk: https://www.webforum.nu/p/1056722

## #5 — raki, 2003-05-20T15:26Z

Ändrade dessa saker:

```php
<form action="index.php" method="post">
```

 

```php
<?php
if(!$year && !$month) {
	$sql = mysql_query("SELECT *,DATE_FORMAT(datum, '%Y-%m-%d (%H:%i)') as tid FROM nyheter ORDER BY id DESC limit 3");
	}else{
	$sql = mysql_query("SELECT *,DATE_FORMAT(datum, '%Y-%m-%d (%H:%i)') as tid FROM nyheter WHERE DATE_FORMAT(datum,'%Y')='{$_POST['year']}' AND DATE_FORMAT(datum,'%m')='{$_POST['month']}'");
	}
	if (mysql_affected_rows() == 0) {
		echo "<tr>";
		echo "<td>Inga nyheter hittades!</td>";
		echo "</tr>";
		}	
											
		while ($row = mysql_fetch_array($sql)) {
			$id		= $row['id'];
			$rubrik	= $row['rubrik'];
			$text	= $row['text'];
			$email	= $row['email'];
			$tid	= $row['tid'];
			$namn	= $row['namn'];
								
			$text 	= styles($text);
?>
```

Permalänk: https://www.webforum.nu/p/1056929

---

Tråden på webben: https://www.webforum.nu/amne/php/77532-variabel-har-inget-värde-efter-form
