1. #1
    Syphon's Avatar
    Registered
    20/10/02
    Location
    Mechelen
    Posts
    180
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0

    php : undefined var : id

    Ik heb nu een nieuwssysteem met een pagina om te verwijderen
    en 1 om aantepassen.

    Maar ik krijg altijd undefined variable : id
    als ik gewoon zet WHERE id"; dan werkt alles wel maar
    dan kijkt die niet naar het id en verandert al het nieuws.
    of als ik het wil verwijderen verwijdert die alles.

    PHP Code:
    $query "UPDATE nieuws SET naam='$naam', bericht='$bericht', 
    emailadres='
    $emailadres', onderwerp='$onderwerp' WHERE id=$id";    
    mysql_query($query) or die (mysql_error()); 
    PHP Code:
    $query "SELECT * FROM nieuws WHERE id='$id'"
    dus ik vermoed dat ik een waarde aan $id moet geven, maar welke?
    Ik zal niet liegen,
    het is een script van sitemasters.
    Zaten veel problemen in die ik al gevonden heb
    maar dit is het laatste en ik weet het echt niet
    Last edited by Syphon; 08-05-2004 at 12:24.
    karting - Extreme Kart (favoriete plek)
    no votes  

  2. #2
    medic's Avatar
    Registered
    17/07/02
    Location
    Mechelen
    Posts
    610
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/2
    Een tabelstructuur zou natuurlijk handig zijn , samen met wat andere code ofcourse

    Maar ik vermoed dat ja ofwel id met hoofdletters moet schrijven (zo wordt dat meestal gedaan). Ofwel gewoon single quotes adden bij uw WHERE statement.

    WHERE id=$id => WHERE id='$id'

    Ik neem hier nu wel aan dat je je POST-vars correct hebt omgezet. Heb je dit nog niet gedaan kan je dit eventueel doen met de volgende code :

    PHP Code:
    foreach($_POST as $key=>$value) $$key=$value
    Maar zoals ik zei, tis moeilijk om zo te zeggen met enkel deze info.
    Het is nutteloos om met idioten te discussiëren, ze slepen u naar beneden, naar hun niveau, en verslaan u met ervaring
    no votes  

  3. #3
    Syphon's Avatar
    Registered
    20/10/02
    Location
    Mechelen
    Posts
    180
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    kzal alles code geven.

    Via admin zie ik al het nieuws per id, waar ik kan kiezen om dat te verwijderen
    of aantepassen.

    ADMIN.PHP
    PHP Code:
    <? 
    if(!isset($_SESSION["username"]) || !isset($_SESSION["password"])) 

    die(
    "<h2>Je hebt geen rechten om deze pagina te bekijken"); 

    else{ 
    ?> 
     <div align="center">
      <table width="89%" border="1" cellspacing="2" cellpadding="2" bordercolor="#999999" bgcolor="#666666">
        <tr bgcolor="#999999"> 
          <td colspan="3"><font face="Verdana" size="-1"><b>Admin 
            pagina:</b></font></td>
        </tr>
        <tr bgcolor="#CCCCCC"> 
          <td width="5%"> 
            <div align="center"><font face="Verdana" size="-1"><b>Id:</b></font></div>
          </td>
          <td width="56%"> 
            <div align="center"><font size="-1" face="Verdana"><b>Onderwerp:</b></font></div>
          </td>
          <td width="39%"> 
            <div align="center"><font size="-1" face="Verdana"><b>Opties:</b></font></div>
          </td>
        </tr>
        <?php   
    include ('config_news.php');  
    $query "SELECT * FROM nieuws ORDER BY id DESC";   
    $resultaat mysql_query($query) or die (mysql_error());   
    while (
    $rij mysql_fetch_object($resultaat)){    
    echo 
    "  
    <tr bgcolor=\"#E2E2E2\"> 
    <td width=\"3%\"> 
    <div align=\"center\">&nbsp;<font face=\"Verdana, Arial, 
    Helvetica, sans-serif\" size=\"-1\">
    $rij->id</font></div> 
    </td><td width=\"58%\"> 
    <div align=\"center\"><font face=\"Verdana, Arial, Helvetica, 
    sans-serif\" size=\"-1\">&nbsp;
    $rij->onderwerp</font></div> 
    </td><td width=\"39%\"> 
    <div align=\"center\"><font face=\"Verdana, Arial, Helvetica, 
    sans-serif\" size=\"-1\"> 
    [<a href=\"news/verandernieuws.php?id=
    $rij->id\">Verander</a>]   
    [<a href=\"news/verwijdernieuws.php?id=
    $rij->id\">Verwijder</a>]  
    </font></div></td></tr> 
    "
    ;}} ?>
      </table>
    </div>
    VERANDERNIEUWS.PHP
    PHP Code:
    <? 
    session_start
    (); 
    if(!isset(
    $_SESSION["username"]) || !isset($_SESSION["password"])) 

    die(
    "<h2>Je hebt geen rechten om deze pagina te bekijken"); 

    else{ 
    ?> 
    <?php  
    include ('config_news.php');  

    if (isset(
    $_POST['Veranderen'])) { 

      
    $naam=$_POST['naam']; 
      
    $bericht=$_POST['bericht'];
      
    $emailadres=$_POST['emailadres'];
      
    $onderwerp=$_POST['onderwerp'];

        if (
    $_POST['bericht'] == ""
          
    $error="Het bericht mag niet leeg zijn"
        if (
    $_POST['naam'] == ""
          
    $error="De naam mag niet leeg zijn"
        if (
    $_POST['emailadres'] == ""
          
    $error="Het e-mailadres mag niet leeg zijn"
           
        if (!
    $error) { 
             
          
    $query "UPDATE nieuws SET naam='$naam', bericht='$bericht', 
    emailadres='
    $emailadres', onderwerp='$onderwerp' WHERE id=$id";    
          
    mysql_query($query) or die (mysql_error());   
    ?> 
    <div align="center"> 
        <table width="39%" border="1" cellspacing="2" cellpadding="2" bordercolor="#999999" bgcolor="#666666"> 
          <tr bgcolor="#999999"> 
            <td colspan="2" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="-1"><b>Nieuws 
              veranderen: </b></font></td> 
          </tr> 
          <tr bgcolor="#999999"> 
            <td colspan="2" height="68" bgcolor="#CCCCCC"> 
              <div align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="-1">Het 
                nieuws is succesvol veranderd<br> 
                </font> 
                <hr color="black"> 
                <font face="Verdana, Arial, Helvetica, sans-serif" size="-1">[ Terug 
                naar <a href="../geheim.php">admin pagina</a> ]<br> 
                </font></div> 
            </td> 
          </tr> 
        </table> 
    </div> 
    <?php 
           
        
    } elseif ($error) { 
             
          echo

    <div align=\"center\"><table width=\"50%\" border=\"1\"   
    cellspacing=\"0\" cellpadding=\"2\"> 
    <tr bordercolor=\"#000000\"> 
    <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\" height=\"36\"> 
    <div align=\"center\"><font color=\"#000000\" face=\"Verdana, 
    Arial, Helvetica, sans-serif\" size=\"-1\"><div align=center> 
    <font color=black size=-1 face=verdana><b>
    $error</b><br> 
    </font></div></font></div> 
    <form method=\"post\" action=\"javascript:history.go(-1)\"> 
    <div align=center><input type=\"submit\" name=\"Terug\"   
    value=\"Terug\"></div> 
    </form></td></tr></table></div> 
    "

        } 
         
    } else {   
        
                        
        
    $query "SELECT * FROM nieuws WHERE id='$id'";    
        
    $resultaat mysql_query($query) or die (mysql_error());    
         
        while (
    $obj mysql_fetch_object($resultaat)) {   
        
            
    $v_bericht $obj->bericht
            
    $v_naam $obj->naam
            
    $v_emailadres$obj->emailadres
            
    $v_onderwerp$obj->onderwerp
    ?> 
    <form action="" method="post"> 
    <div align="center"> 
        <table width="39%" border="1" cellspacing="2" cellpadding="2" bordercolor="#999999" bgcolor="#666666"> 
          <tr bgcolor="#999999"> 
            <td colspan="2" height="22"><font face="Verdana, Arial, Helvetica, sans-serif" size="-1"><b>Nieuws 
              veranderen: </b></font></td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td width="58%"> 
              <div align="left"><font size="-1" face="Verdana, Arial, Helvetica, 
    sans-serif">Je naam: </font></div> 
            </td> 
            <td width="42%"><font size="-1"><font size="-1"><font face="Verdana, Arial, Helvetica, sans-serif"> 
              <input type="text" name="naam" size="30" value="<?php echo"$v_naam"?>"> 
              </font></font></font></td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td width="58%"> 
              <div align="left"><font size="-1"><font size="-1"> <font face="Verdana, Arial, Helvetica, sans-serif"> 
                </font></font><font size="-1" face="Verdana, Arial, Helvetica, sans-serif">Je 
                e-mailadres: </font><font face="Verdana, Arial, Helvetica, sans-serif"> 
                </font></font></div> 
            </td> 
            <td width="42%"><font size="-1"><font size="-1"><font face="Verdana, Arial, Helvetica, sans-serif"> 
              <input type="text" name="emailadres" size="30" value="<?php echo"$v_emailadres"?>"> 
              </font></font></font></td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td width="58%"> 
              <div align="left"><font size="-1" face="Verdana, Arial, Helvetica, sans-serif">Het 
                onderwerp: </font></div> 
            </td> 
            <td width="42%"><font size="-1"><font size="-1"><font face="Verdana, Arial, Helvetica, sans-serif"> 
              <input type="text" name="onderwerp" size="30" value="<?php echo"$v_onderwerp"?>"> 
              </font></font></font></td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td colspan="2"> 
              <div align="center"><font face="Verdana, Arial, Helvetica, 
    sans-serif" size="-1">Bericht: </font><font size="-1" 
    face="Verdana, Arial, Helvetica, sans-serif"> </font></div> 
            </td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td colspan="2"> 
              <div align="center"><font size="-1"><font size="-1"> <font face="Verdana, Arial, Helvetica, sans-serif"> 
                </font></font><font face="Verdana, Arial, Helvetica, sans-serif"> 
                <textarea name="bericht" cols="50" rows="20" wrap="VIRTUAL"><?php echo"$v_bericht"?></textarea> 
                </font></font></div> 
            </td> 
          </tr> 
          <tr bgcolor="#CCCCCC"> 
            <td colspan="2">&nbsp; </td> 
          </tr> 
          <tr bgcolor="#999999"> 
            <td colspan="2" height="20"> 
              <div align="center"> 
                <input type="submit" value="Verander nieuws" name="Veranderen"> 
                <input type="button" value="Terug naar admin" 
    onClick="window.location='../geheim.php' " name="button"> 
              </div> 
            </td> 
          </tr> 
        </table> 
    </div> 
    </form>   

    <?php 
        

    } }
    ?>
    karting - Extreme Kart (favoriete plek)
    no votes  

  4. #4
    medic's Avatar
    Registered
    17/07/02
    Location
    Mechelen
    Posts
    610
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/2
    Ik heb nu niet alles gelezen, code kan me niet oneindig blijven boeien , maar ik vermoed dat je overal met POST en GET door elkaar werkt en dat het daardoor niet marcheert.

    *EDIT* Uw code op zich is nu ook ni zo denderend. Allez, 'k bedoel ge hebt ongebruikte escapes van de php-tags staan en op andere plaatsen echo't ge dan weer hele html code met dubbele quotes terwijl ge alle quotes van de html moet slashen (in plaats van daar dan die html gewoon te escapen)
    Last edited by medic; 08-05-2004 at 12:44.
    Het is nutteloos om met idioten te discussiëren, ze slepen u naar beneden, naar hun niveau, en verslaan u met ervaring
    no votes  

  5. #5
    Syphon's Avatar
    Registered
    20/10/02
    Location
    Mechelen
    Posts
    180
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    mja, zoal ik al gezegd heb, tis een script van sitemasters eh.
    Op zich is het wel handig, maar hoe ze in elkaar zitten ...
    karting - Extreme Kart (favoriete plek)
    no votes  

  6. #6
    medic's Avatar
    Registered
    17/07/02
    Location
    Mechelen
    Posts
    610
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/2
    Quote Originally Posted by Syphon
    This quote is hidden because you are ignoring this member. Show
    mja, zoal ik al gezegd heb, tis een script van sitemasters eh.
    Op zich is het wel handig, maar hoe ze in elkaar zitten ...
    Mja, had'k nog ni gezien, maar zegt eigenlijk al genoeg da't van sitemasters is Ik denk dat ge het bevredigender gaat vinden als ge zelf PHP leert schrijven, 't gaat wel een maandje of twee duren, maar ge gaat contenter zijn van uw eigen werk
    Het is nutteloos om met idioten te discussiëren, ze slepen u naar beneden, naar hun niveau, en verslaan u met ervaring
    no votes  

  7. #7
    Syphon's Avatar
    Registered
    20/10/02
    Location
    Mechelen
    Posts
    180
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Mja, kan ek op inkomen.
    Maar het probleem is dat ik van alles een beetje ken
    en ik heb totaal geen idee hoe ik da allemaal samen moet
    gebruiken
    karting - Extreme Kart (favoriete plek)
    no votes  

  8. #8
    medic's Avatar
    Registered
    17/07/02
    Location
    Mechelen
    Posts
    610
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/2
    Specialisatie is the key my friend Ik heb ondertussen ook al moeten vaststellen dat ge onmogelijk alles kunt kennen en dat ge u beter specialiseert in't geen ge't best kunt / liefst doet. (En eerlijk gezegd heeft't voor mij toch al wel opgebracht )
    Het is nutteloos om met idioten te discussiëren, ze slepen u naar beneden, naar hun niveau, en verslaan u met ervaring
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in