Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Ali Baba en 27 Junio 2017, 23:20 pm



Título: Problema con href y php
Publicado por: Ali Baba en 27 Junio 2017, 23:20 pm
Pues tengo este codigo, que cambia el valor de la variable nombre dependiendo del anno que se coloque en el input:


Código
  1. <!DOCTYPE html>
  2. <html>
  3.  
  4. <head>
  5.  <meta charset="utf-8">
  6.  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7.  <title>Zodiaco Chino</title>
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  9.  <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
  10.  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
  11.  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.3.0/css/mdb.min.css">
  12.  <link rel="stylesheet" href="../css/estilos.css">
  13.  
  14. </head>
  15.  
  16. <body>
  17.  <div class="container">
  18.    <div class="header">
  19.      <div class="row">
  20.        <div class="col-md-6 col-md-6-offset">
  21.        <form method="post">
  22.          <div class="md-form">
  23.            <input  class="form-control mr-sm-2" maxlength="4" type="text" name="search" id="search">
  24.            <label for="search">Coloca tu año de nacimiento</label>
  25.          </div>
  26.          <button class="btn btn-outline-danger btn-md btn-block waves-effect " type="submit">Buscar</button>
  27.        </form>
  28.        </div>
  29.      </div>
  30.    </div>
  31.    <!-- -->
  32.  
  33.  
  34.  <div class="coco modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  35.  <div class="modal-dialog btn-outline-danger" role="document">
  36.    <div class="modal-content">
  37.      <div class="modal-header">
  38.        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  39.      </div>
  40.      <div class="modal-body">
  41.      </div>
  42.      <div class="modal-footer">
  43.      <a href="<?php $link ?>" class="btn btn-outline-info waves-effect">Mas...</a>
  44.        <button type="button" class="btn btn-outline-danger waves-effect" data-dismiss="modal">Cerrar</button>
  45.      </div>
  46.    </div>
  47.  </div>
  48. </div>
  49.  
  50.  
  51.  
  52.    <!-- -->
  53.    <div class="container">
  54.      <div class="row">
  55.        <div class="col-md-9">
  56.          <div class="center">
  57.            <div class="">¿No conoces sobre tu signo zodiacal chino? Busca aqui!</div>
  58.            <div class="six">
  59.              <button class="btn btn-outline-danger waves-effect btn-md">&#34382; Tigre</button>
  60.              <button class="btn btn-outline-danger waves-effect btn-md">&#20820; Conejo</button>
  61.              <button class="btn btn-outline-danger waves-effect btn-md">&#40845; Dragon</button>
  62.              <button class="btn btn-outline-danger waves-effect btn-md">&#34503; Serpiente</button>
  63.              <button class="btn btn-outline-danger waves-effect btn-md">&#39340; Caballo</button>
  64.              <button class="btn btn-outline-danger waves-effect btn-md">&#32650; Cabra</button>
  65.            </div>
  66.            <div class="six-more col-md-12 col-md-12-offset">
  67.              <button class="btn btn-outline-danger waves-effect btn-md">&#29492; Mono</button>
  68.              <button class="btn btn-outline-danger waves-effect btn-md">&#38622; Gallo</button>
  69.              <button class="btn btn-outline-danger waves-effect btn-md">&#29399; Perro</button>
  70.              <button class="btn btn-outline-danger waves-effect btn-md">&#35948; Puerco</button>
  71.              <button class="btn btn-outline-danger waves-effect btn-md">&#40736; Rata</button>
  72.              <button class="btn btn-outline-danger waves-effect btn-md">&#29275; Buey</button>
  73.            </div>
  74.          </div>
  75.        </div>
  76.      </div>
  77.    </div>
  78.  
  79.  
  80.    <!-- footer -->
  81. <footer class="center-footer">
  82.    <div class="footer-copyright">
  83.            © 2017 Copyright:  Ronnie Rodriguez
  84.    </div>
  85. </footer>
  86.    <script src="js/includejs.js"></script>
  87.  
  88.    <script src="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.3.0/js/mdb.min.js"></script>
  89.    <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js"></script>
  90.    <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script>
  91.    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"></script>
  92.  
  93.     <?php
  94.  
  95. $search=isset($_POST['search'])?$_POST['search']:'';
  96. if ($search!=''){
  97.  
  98. $nombre='(todavia ninguno)';
  99.    $link='(todavia ninguno)';
  100.  
  101. switch($search){
  102. case "1944": case "1956":  case "1968": case "1980": case "1992": case "2004": case "2016":
  103. $nombre='Mono';
  104.        $link ='http://www.google.com/mono';
  105. break;
  106.  
  107.      case "1945": case "1957":  case "1969": case "1981": case "1993": case "2005": case "2017":
  108.        $nombre='Gallo';
  109.      break;
  110.  
  111.      case "1946": case "1958":  case "1970": case "1982": case "1994": case "2006": case "2018":
  112.        $nombre='Perro';
  113.      break;
  114.  
  115.      case "1947": case "1959":  case "1971": case "1983": case "1995": case "2007": case "2019":
  116.        $nombre='Puerco';
  117.      break;
  118.  
  119.      case "1948": case "1960":  case "1972": case "1984": case "1996": case "2008":
  120.      case "2020":
  121.        $nombre='Rata';
  122.      break;
  123.  
  124.      case "1949": case "1961":  case "1923": case "1985": case "1997": case "2009": case "2021":
  125.        $nombre='Bufalo';
  126.      break;
  127.  
  128.      case "1950": case "1962":  case "1924": case "1986": case "1998": case "2010": case "2022":
  129.        $nombre='Tigre';
  130.      break;
  131.  
  132.      case "1951": case "1963":  case "1924": case "1987": case "1999": case "2011": case "2023":
  133.        $nombre='Conejo';
  134.      break;
  135.  
  136.      case "1952": case "1964":  case "1925": case "1986": case "2000": case "2012": case "2024":
  137.        $nombre='Dragon';
  138.      break;
  139.  
  140.      case "1953": case "1965":  case "1926": case "1987": case "2001": case "2013": case "2025":
  141.        $nombre='Serpiente';
  142.      break;
  143.  
  144.      case "1954": case "1966":  case "1927": case "1988": case "2002": case "2014": case "2025":
  145.        $nombre='Caballo';
  146.      break;
  147.  
  148.  
  149.      case "1955": case "1967":  case "1928": case "1989": case "2003": case "2015": case "2026":
  150.        $nombre='Cabra';
  151.      break;
  152. }
  153.  
  154.  
  155. ?>
  156.     <script>
  157. $('.coco .modal-body').html('Your sign is: <?php echo $nombre; ?>')
  158. $('.coco').modal('show')
  159. </script>
  160.  
  161. <?php
  162.  
  163. }
  164.  
  165.  ?>
  166.  </div>
  167.  
  168.  
  169. </body>
  170.  
  171. </html>


y lo que quiero es que en la linea 43:

Código
  1.   <a href="<?php $link ?>" class="btn btn-outline-info waves-effect">Mas...</a>

se cambie el link en el href dependiendo del anno como mismo pasa con la variable, que hago?


Título: Re: Problema con href y php
Publicado por: XKC en 28 Junio 2017, 01:44 am
y lo que quiero es que en la linea 43:

Código
  1.   <a href="<?php $link ?>" class="btn btn-outline-info waves-effect">Mas...</a>

se cambie el link en el href dependiendo del anno como mismo pasa con la variable, que hago?
A ver, no me he enterao bien de que es lo que quieres, pero supongo que es algo asi:
Tienes un formulario que envia valores y quieres que te los imprima en el html, en concreto $nombre y $link.
Como los valores a partir de los que generas esas variables los recoges con $_POST, copia tu php arriba para tener ya las variables disponibles y luego imprimes con echo tal que asi:

Código
  1. <!DOCTYPE html>
  2.  <?php
  3.  
  4. $search=isset($_POST['search'])?$_POST['search']:'';
  5. if ($search!=''){
  6.  
  7. $nombre='(todavia ninguno)';
  8.    $link='(todavia ninguno)';
  9.  
  10. switch($search){
  11. case "1944": case "1956":  case "1968": case "1980": case "1992": case "2004": case "2016":
  12. $nombre='Mono';
  13.        $link ='http://www.google.com/mono';
  14. break;
  15.  
  16.      case "1945": case "1957":  case "1969": case "1981": case "1993": case "2005": case "2017":
  17.        $nombre='Gallo';
  18.      break;
  19.  
  20.      case "1946": case "1958":  case "1970": case "1982": case "1994": case "2006": case "2018":
  21.        $nombre='Perro';
  22.      break;
  23.  
  24.      case "1947": case "1959":  case "1971": case "1983": case "1995": case "2007": case "2019":
  25.        $nombre='Puerco';
  26.      break;
  27.  
  28.      case "1948": case "1960":  case "1972": case "1984": case "1996": case "2008":
  29.      case "2020":
  30.        $nombre='Rata';
  31.      break;
  32.  
  33.      case "1949": case "1961":  case "1923": case "1985": case "1997": case "2009": case "2021":
  34.        $nombre='Bufalo';
  35.      break;
  36.  
  37.      case "1950": case "1962":  case "1924": case "1986": case "1998": case "2010": case "2022":
  38.        $nombre='Tigre';
  39.      break;
  40.  
  41.      case "1951": case "1963":  case "1924": case "1987": case "1999": case "2011": case "2023":
  42.        $nombre='Conejo';
  43.      break;
  44.  
  45.      case "1952": case "1964":  case "1925": case "1986": case "2000": case "2012": case "2024":
  46.        $nombre='Dragon';
  47.      break;
  48.  
  49.      case "1953": case "1965":  case "1926": case "1987": case "2001": case "2013": case "2025":
  50.        $nombre='Serpiente';
  51.      break;
  52.  
  53.      case "1954": case "1966":  case "1927": case "1988": case "2002": case "2014": case "2025":
  54.        $nombre='Caballo';
  55.      break;
  56.  
  57.  
  58.      case "1955": case "1967":  case "1928": case "1989": case "2003": case "2015": case "2026":
  59.        $nombre='Cabra';
  60.      break;
  61. }
  62.  
  63.  
  64. ?>
  65. <html>
  66.  
  67. <head>
  68.  <meta charset="utf-8">
  69.  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  70.  <title>Zodiaco Chino</title>
  71. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  72.  <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
  73.  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
  74.  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.3.0/css/mdb.min.css">
  75.  <link rel="stylesheet" href="../css/estilos.css">
  76.  
  77. </head>
  78.  
  79. <body>
  80.  <div class="container">
  81.    <div class="header">
  82.      <div class="row">
  83.        <div class="col-md-6 col-md-6-offset">
  84.        <form method="post">
  85.          <div class="md-form">
  86.            <input  class="form-control mr-sm-2" maxlength="4" type="text" name="search" id="search">
  87.            <label for="search">Coloca tu año de nacimiento</label>
  88.          </div>
  89.          <button class="btn btn-outline-danger btn-md btn-block waves-effect " type="submit">Buscar</button>
  90.        </form>
  91.        </div>
  92.      </div>
  93.    </div>
  94.    <!-- -->
  95.  
  96.  
  97.  <div class="coco modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  98.  <div class="modal-dialog btn-outline-danger" role="document">
  99.    <div class="modal-content">
  100.      <div class="modal-header">
  101.        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  102.      </div>
  103.      <div class="modal-body">
  104.      </div>
  105.      <div class="modal-footer">
  106.      <a href="<?php echo $link ?>" class="btn btn-outline-info waves-effect">Mas...</a>
  107.        <button type="button" class="btn btn-outline-danger waves-effect" data-dismiss="modal">Cerrar</button>
  108.      </div>
  109.    </div>
  110.  </div>
  111. </div>
  112.  
  113.  
  114.  
  115.    <!-- -->
  116.    <div class="container">
  117.      <div class="row">
  118.        <div class="col-md-9">
  119.          <div class="center">
  120.            <div class="">¿No conoces sobre tu signo zodiacal chino? Busca aqui!</div>
  121.            <div class="six">
  122.              <button class="btn btn-outline-danger waves-effect btn-md">&#34382; Tigre</button>
  123.              <button class="btn btn-outline-danger waves-effect btn-md">&#20820; Conejo</button>
  124.              <button class="btn btn-outline-danger waves-effect btn-md">&#40845; Dragon</button>
  125.              <button class="btn btn-outline-danger waves-effect btn-md">&#34503; Serpiente</button>
  126.              <button class="btn btn-outline-danger waves-effect btn-md">&#39340; Caballo</button>
  127.              <button class="btn btn-outline-danger waves-effect btn-md">&#32650; Cabra</button>
  128.            </div>
  129.            <div class="six-more col-md-12 col-md-12-offset">
  130.              <button class="btn btn-outline-danger waves-effect btn-md">&#29492; Mono</button>
  131.              <button class="btn btn-outline-danger waves-effect btn-md">&#38622; Gallo</button>
  132.              <button class="btn btn-outline-danger waves-effect btn-md">&#29399; Perro</button>
  133.              <button class="btn btn-outline-danger waves-effect btn-md">&#35948; Puerco</button>
  134.              <button class="btn btn-outline-danger waves-effect btn-md">&#40736; Rata</button>
  135.              <button class="btn btn-outline-danger waves-effect btn-md">&#29275; Buey</button>
  136.            </div>
  137.          </div>
  138.        </div>
  139.      </div>
  140.    </div>
  141.  
  142.  
  143.    <!-- footer -->
  144. <footer class="center-footer">
  145.    <div class="footer-copyright">
  146.            © 2017 Copyright:  Ronnie Rodriguez
  147.    </div>
  148. </footer>
  149.    <script src="js/includejs.js"></script>
  150.  
  151.    <script src="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.3.0/js/mdb.min.js"></script>
  152.    <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js"></script>
  153.    <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script>
  154.    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"></script>
  155.  
  156.     <script>
  157. $('.coco .modal-body').html('Your sign is: <?php echo $nombre; ?>')
  158. $('.coco').modal('show')
  159. </script>
  160.  
  161. <?php
  162.  
  163. }
  164.  
  165.  ?>
  166.  </div>
  167.  
  168.  
  169. </body>
  170.  
  171. </html>

No se si es esto lo que buscabas...


Título: Re: Problema con href y php
Publicado por: Ali Baba en 28 Junio 2017, 01:59 am
es lo q tengo pero no me sirve, y si es lo que quiero. que el valor del href sea el mismo que el de la variable $link


Título: Re: Problema con href y php
Publicado por: danny920825 en 28 Junio 2017, 13:25 pm
Y no es mas facil hacer eso en JS? Lo Controlas desde el cliente y no necesitas hacer una peticion al servidor. Y de hecho, hay mucho código en JS para hacer algo como lo que quieres. Pienso que seria una buena idea.


Título: Re: Problema con href y php
Publicado por: XKC en 28 Junio 2017, 15:48 pm
es lo q tengo pero no me sirve, y si es lo que quiero. que el valor del href sea el mismo que el de la variable $link
De esta manera el valor de href deberia ser el de $link, ¿ en donde te falla?